123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- <?php
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- declare(strict_types=1);
- namespace Magento\InventoryApi\Test\Api\StockRepository;
- use Magento\Framework\Webapi\Rest\Request;
- use Magento\InventoryApi\Api\Data\StockInterface;
- use Magento\TestFramework\Assert\AssertArrayContains;
- use Magento\TestFramework\TestCase\WebapiAbstract;
- class UpdateTest extends WebapiAbstract
- {
- /**#@+
- * Service constants
- */
- const RESOURCE_PATH = '/V1/inventory/stocks';
- const SERVICE_NAME = 'inventoryApiStockRepositoryV1';
- /**#@-*/
- /**
- * @magentoApiDataFixture ../../../../app/code/Magento/InventoryApi/Test/_files/stock.php
- */
- public function testUpdate()
- {
- $stockId = 10;
- $expectedData = [
- StockInterface::NAME => 'stock-name-1-updated',
- ];
- $serviceInfo = [
- 'rest' => [
- 'resourcePath' => self::RESOURCE_PATH . '/' . $stockId,
- 'httpMethod' => Request::HTTP_METHOD_PUT,
- ],
- 'soap' => [
- 'service' => self::SERVICE_NAME,
- 'operation' => self::SERVICE_NAME . 'Save',
- ],
- ];
- if (TESTS_WEB_API_ADAPTER === self::ADAPTER_REST) {
- $this->_webApiCall($serviceInfo, ['stock' => $expectedData]);
- } else {
- $requestData = $expectedData;
- $requestData['stockId'] = $stockId;
- $this->_webApiCall($serviceInfo, ['stock' => $requestData]);
- }
- AssertArrayContains::assert($expectedData, $this->getStockDataById($stockId));
- }
- /**
- * @param int $stockId
- * @return array
- */
- private function getStockDataById(int $stockId): array
- {
- $serviceInfo = [
- 'rest' => [
- 'resourcePath' => self::RESOURCE_PATH . '/' . $stockId,
- 'httpMethod' => Request::HTTP_METHOD_GET,
- ],
- 'soap' => [
- 'service' => self::SERVICE_NAME,
- 'operation' => self::SERVICE_NAME . 'Get',
- ],
- ];
- $response = (TESTS_WEB_API_ADAPTER === self::ADAPTER_REST)
- ? $this->_webApiCall($serviceInfo)
- : $this->_webApiCall($serviceInfo, ['stockId' => $stockId]);
- self::assertArrayHasKey(StockInterface::STOCK_ID, $response);
- return $response;
- }
- }
|