/
githubmirror
/
magento2
Обзор
Документация
Войти
/
githubmirror
/
magento2
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
2.4-develop
dev/tests/api-functional/testsuite/Magento/GraphQl/VariablesSupportQueryTest.php
81 строка
2 KB
Alexandra Zota
ACP2E-4019: CE copyright updates for 2.4.9-beta1
22 окт 2025, 10:44
22 окт 2025, 10:44
264bea2
Код
Авторство
О чём код?
<?php /** * Copyright 2018 Adobe * All Rights Reserved. */ declare(strict_types=1); namespace Magento\GraphQl; use Magento\TestFramework\Helper\Bootstrap; use Magento\TestFramework\TestCase\GraphQlAbstract; use Magento\Catalog\Api\ProductRepositoryInterface; class VariablesSupportQueryTest extends GraphQlAbstract { /** * @var ProductRepositoryInterface */ private $productRepository; protected function setUp(): void { $this->productRepository = Bootstrap::getObjectManager()->get(ProductRepositoryInterface::class); } /** * @magentoApiDataFixture Magento/Catalog/_files/products_list.php */ public function testQueryObjectVariablesSupport() { $productSku = 'simple-249'; $minPrice = 153; $query = <<<'QUERY' query GetProductsQuery($pageSize: Int, $filterInput: ProductAttributeFilterInput, $priceSort: SortEnum) { products( pageSize: $pageSize filter: $filterInput sort: {price: $priceSort} ) { items { sku price { minimalPrice { amount { value currency } } } } } } QUERY; $variables = [ 'pageSize' => 1, 'priceSort' => 'ASC', 'filterInput' => [ 'price' => [ 'from' => '150', ], ], ]; $response = $this->graphQlQuery($query, $variables); /** @var \Magento\Catalog\Model\Product $product */ $product = $this->productRepository->get($productSku, false, null, true); self::assertArrayHasKey('products', $response); self::assertArrayHasKey('items', $response['products']); self::assertCount(1, $response['products']['items']); self::assertArrayHasKey(0, $response['products']['items']); self::assertEquals($product->getSku(), $response['products']['items'][0]['sku']); self::assertEquals( $minPrice, $response['products']['items'][0]['price']['minimalPrice']['amount']['value'] ); } }