12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- <?php
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- declare(strict_types=1);
- namespace Magento\InventoryApi\Test\Api\StockSourceLink;
- use Magento\Framework\Api\SearchCriteria;
- use Magento\Framework\Api\SortOrder;
- use Magento\Framework\Webapi\Rest\Request;
- use Magento\InventoryApi\Api\Data\StockSourceLinkInterface;
- use Magento\TestFramework\Assert\AssertArrayContains;
- use Magento\TestFramework\TestCase\WebapiAbstract;
- class GetStockSourceLinksTest extends WebapiAbstract
- {
- /**#@+
- * Service constants
- */
- const RESOURCE_PATH = '/V1/inventory/stock-source-links';
- const SERVICE_NAME = 'inventoryApiGetStockSourceLinksV1';
- /**#@-*/
- /**
- * @magentoApiDataFixture ../../../../app/code/Magento/InventoryApi/Test/_files/sources.php
- * @magentoApiDataFixture ../../../../app/code/Magento/InventoryApi/Test/_files/stocks.php
- * @magentoApiDataFixture ../../../../app/code/Magento/InventoryApi/Test/_files/stock_source_links.php
- */
- public function testGetList()
- {
- $requestData = [
- 'searchCriteria' => [
- SearchCriteria::FILTER_GROUPS => [
- [
- 'filters' => [
- [
- 'field' => StockSourceLinkInterface::STOCK_ID,
- 'value' => 10,
- 'condition_type' => 'eq',
- ],
- ],
- ],
- ],
- SearchCriteria::SORT_ORDERS => [
- [
- 'field' => StockSourceLinkInterface::SOURCE_CODE,
- 'direction' => SortOrder::SORT_DESC,
- ],
- ],
- SearchCriteria::CURRENT_PAGE => 2,
- SearchCriteria::PAGE_SIZE => 2,
- ],
- ];
- $expectedTotalCount = 4;
- $expectedItemsData = [
- [
- StockSourceLinkInterface::SOURCE_CODE => 'eu-2',
- StockSourceLinkInterface::STOCK_ID => 10,
- StockSourceLinkInterface::PRIORITY => 2,
- ],
- [
- StockSourceLinkInterface::SOURCE_CODE => 'eu-1',
- StockSourceLinkInterface::STOCK_ID => 10,
- StockSourceLinkInterface::PRIORITY => 1,
- ],
- ];
- $serviceInfo = [
- 'rest' => [
- 'resourcePath' => self::RESOURCE_PATH . '?' . http_build_query($requestData),
- 'httpMethod' => Request::HTTP_METHOD_GET,
- ],
- 'soap' => [
- 'service' => self::SERVICE_NAME,
- 'operation' => self::SERVICE_NAME . 'Execute',
- ],
- ];
- $response = (TESTS_WEB_API_ADAPTER === self::ADAPTER_REST)
- ? $this->_webApiCall($serviceInfo)
- : $this->_webApiCall($serviceInfo, $requestData);
- AssertArrayContains::assert($requestData['searchCriteria'], $response['search_criteria']);
- self::assertEquals($expectedTotalCount, $response['total_count']);
- AssertArrayContains::assert($expectedItemsData, $response['items']);
- }
- }
|