1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- <?php
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- declare(strict_types=1);
- namespace Magento\GraphQl\Quote;
- use Magento\TestFramework\Helper\Bootstrap;
- use Magento\TestFramework\TestCase\GraphQlAbstract;
- use Magento\Quote\Model\Quote;
- use Magento\Quote\Model\QuoteIdToMaskedQuoteIdInterface;
- use Magento\Quote\Model\ResourceModel\Quote as QuoteResource;
- class AddSimpleProductToCartTest extends GraphQlAbstract
- {
- /**
- * @var QuoteResource
- */
- private $quoteResource;
- /**
- * @var Quote
- */
- private $quote;
- /**
- * @var QuoteIdToMaskedQuoteIdInterface
- */
- private $quoteIdToMaskedId;
- /**
- * @inheritdoc
- */
- protected function setUp()
- {
- $this->markTestIncomplete('https://github.com/magento/graphql-ce/issues/434');
- $objectManager = Bootstrap::getObjectManager();
- $this->quoteResource = $objectManager->get(QuoteResource::class);
- $this->quote = $objectManager->create(Quote::class);
- $this->quoteIdToMaskedId = $objectManager->get(QuoteIdToMaskedQuoteIdInterface::class);
- }
- /**
- * @magentoApiDataFixture Magento/Catalog/_files/products.php
- * @magentoApiDataFixture Magento/Checkout/_files/active_quote.php
- * @expectedException \Exception
- * @expectedExceptionMessage The requested qty is not available
- */
- public function testAddProductIfQuantityIsNotAvailable()
- {
- $sku = 'simple';
- $qty = 200;
- $this->quoteResource->load(
- $this->quote,
- 'test_order_1',
- 'reserved_order_id'
- );
- $maskedQuoteId = $this->quoteIdToMaskedId->execute((int)$this->quote->getId());
- $query = <<<QUERY
- mutation {
- addSimpleProductsToCart(
- input: {
- cart_id: "{$maskedQuoteId}",
- cartItems: [
- {
- data: {
- qty: $qty
- sku: "$sku"
- }
- }
- ]
- }
- ) {
- cart {
- items {
- qty
- }
- }
- }
- }
- QUERY;
- $this->graphQlQuery($query);
- }
- }
|