99
1010use Magento \GraphQl \Quote \GetMaskedQuoteIdByReservedOrderId ;
1111use Magento \Integration \Api \CustomerTokenServiceInterface ;
12- use Magento \Quote \Model \QuoteFactory ;
13- use Magento \Quote \Model \QuoteIdToMaskedQuoteIdInterface ;
14- use Magento \Quote \Model \ResourceModel \Quote as QuoteResource ;
1512use Magento \TestFramework \Helper \Bootstrap ;
1613use Magento \TestFramework \TestCase \GraphQlAbstract ;
1714
@@ -25,21 +22,6 @@ class GetCartTest extends GraphQlAbstract
2522 */
2623 private $ getMaskedQuoteIdByReservedOrderId ;
2724
28- /**
29- * @var QuoteResource
30- */
31- private $ quoteResource ;
32-
33- /**
34- * @var QuoteFactory
35- */
36- private $ quoteFactory ;
37-
38- /**
39- * @var QuoteIdToMaskedQuoteIdInterface
40- */
41- private $ quoteIdToMaskedId ;
42-
4325 /**
4426 * @var CustomerTokenServiceInterface
4527 */
@@ -49,19 +31,21 @@ protected function setUp()
4931 {
5032 $ objectManager = Bootstrap::getObjectManager ();
5133 $ this ->getMaskedQuoteIdByReservedOrderId = $ objectManager ->get (GetMaskedQuoteIdByReservedOrderId::class);
52- $ this ->quoteResource = $ objectManager ->get (QuoteResource::class);
53- $ this ->quoteFactory = $ objectManager ->get (QuoteFactory::class);
54- $ this ->quoteIdToMaskedId = $ objectManager ->get (QuoteIdToMaskedQuoteIdInterface::class);
5534 $ this ->customerTokenService = $ objectManager ->get (CustomerTokenServiceInterface::class);
5635 }
5736
5837 /**
59- * @magentoApiDataFixture Magento/Checkout/_files/quote_with_items_saved.php
38+ * @magentoApiDataFixture Magento/Customer/_files/customer.php
39+ * @magentoApiDataFixture Magento/Catalog/_files/product_simple.php
40+ * @magentoApiDataFixture Magento/Catalog/_files/product_virtual.php
41+ * @magentoApiDataFixture Magento/GraphQl/Quote/_files/customer/create_empty_cart.php
42+ * @magentoApiDataFixture Magento/GraphQl/Quote/_files/add_simple_product.php
43+ * @magentoApiDataFixture Magento/GraphQl/Quote/_files/add_virtual_product.php
6044 */
6145 public function testGetCart ()
6246 {
63- $ maskedQuoteId = $ this ->getMaskedQuoteIdByReservedOrderId ->execute ('test_order_item_with_items ' );
64- $ query = $ this ->getCartQuery ($ maskedQuoteId );
47+ $ maskedQuoteId = $ this ->getMaskedQuoteIdByReservedOrderId ->execute ('test_quote ' );
48+ $ query = $ this ->getQuery ($ maskedQuoteId );
6549
6650 $ response = $ this ->graphQlQuery ($ query , [], '' , $ this ->getHeaderMap ());
6751
@@ -70,24 +54,23 @@ public function testGetCart()
7054 self ::assertCount (2 , $ response ['cart ' ]['items ' ]);
7155
7256 self ::assertNotEmpty ($ response ['cart ' ]['items ' ][0 ]['id ' ]);
73- self ::assertEquals ($ response ['cart ' ]['items ' ][0 ]['qty ' ], 2 );
74- self ::assertEquals ($ response ['cart ' ]['items ' ][0 ]['product ' ]['sku ' ], ' simple ' );
57+ self ::assertEquals (2 , $ response ['cart ' ]['items ' ][0 ]['qty ' ]);
58+ self ::assertEquals (' simple ' , $ response ['cart ' ]['items ' ][0 ]['product ' ]['sku ' ]);
7559
7660 self ::assertNotEmpty ($ response ['cart ' ]['items ' ][1 ]['id ' ]);
77- self ::assertEquals ($ response ['cart ' ]['items ' ][1 ]['qty ' ], 1 );
78- self ::assertEquals ($ response ['cart ' ]['items ' ][1 ]['product ' ]['sku ' ], ' simple_one ' );
61+ self ::assertEquals (2 , $ response ['cart ' ]['items ' ][1 ]['qty ' ]);
62+ self ::assertEquals (' virtual-product ' , $ response ['cart ' ]['items ' ][1 ]['product ' ]['sku ' ]);
7963 }
8064
8165 /**
66+ * @security
8267 * @magentoApiDataFixture Magento/Customer/_files/customer.php
83- * @magentoApiDataFixture Magento/Checkout/ _files/quote_with_simple_product_saved .php
68+ * @magentoApiDataFixture Magento/GraphQl/Quote/ _files/guest/create_empty_cart .php
8469 */
8570 public function testGetGuestCart ()
8671 {
87- $ maskedQuoteId = $ this ->getMaskedQuoteIdByReservedOrderId ->execute (
88- 'test_order_with_simple_product_without_address '
89- );
90- $ query = $ this ->getCartQuery ($ maskedQuoteId );
72+ $ maskedQuoteId = $ this ->getMaskedQuoteIdByReservedOrderId ->execute ('test_quote ' );
73+ $ query = $ this ->getQuery ($ maskedQuoteId );
9174
9275 $ this ->expectExceptionMessage (
9376 "The current user cannot perform operations on cart \"{$ maskedQuoteId }\""
@@ -96,13 +79,14 @@ public function testGetGuestCart()
9679 }
9780
9881 /**
82+ * @security
9983 * @magentoApiDataFixture Magento/Customer/_files/three_customers.php
100- * @magentoApiDataFixture Magento/Checkout/ _files/quote_with_items_saved .php
84+ * @magentoApiDataFixture Magento/GraphQl/Quote/ _files/customer/create_empty_cart .php
10185 */
10286 public function testGetAnotherCustomerCart ()
10387 {
104- $ maskedQuoteId = $ this ->getMaskedQuoteIdByReservedOrderId ->execute ('test_order_item_with_items ' );
105- $ query = $ this ->getCartQuery ($ maskedQuoteId );
88+ $ maskedQuoteId = $ this ->getMaskedQuoteIdByReservedOrderId ->execute ('test_quote ' );
89+ $ query = $ this ->getQuery ($ maskedQuoteId );
10690
10791 $ this ->expectExceptionMessage (
10892 "The current user cannot perform operations on cart \"{$ maskedQuoteId }\""
@@ -112,33 +96,30 @@ public function testGetAnotherCustomerCart()
11296
11397 /**
11498 * @magentoApiDataFixture Magento/Customer/_files/customer.php
99+ *
115100 * @expectedException \Exception
116101 * @expectedExceptionMessage Could not find a cart with ID "non_existent_masked_id"
117102 */
118103 public function testGetNonExistentCart ()
119104 {
120105 $ maskedQuoteId = 'non_existent_masked_id ' ;
121- $ query = $ this ->getCartQuery ($ maskedQuoteId );
106+ $ query = $ this ->getQuery ($ maskedQuoteId );
122107
123108 $ this ->graphQlQuery ($ query , [], '' , $ this ->getHeaderMap ());
124109 }
125110
126111 /**
127- * @magentoApiDataFixture Magento/Checkout/_files/quote_with_simple_product_saved.php
128112 * @magentoApiDataFixture Magento/Customer/_files/customer.php
113+ * @magentoApiDataFixture Magento/GraphQl/Quote/_files/customer/create_empty_cart.php
114+ * @magentoApiDataFixture Magento/GraphQl/Quote/_files/make_cart_inactive.php
115+ *
129116 * @expectedException \Exception
130117 * @expectedExceptionMessage Current user does not have an active cart.
131118 */
132119 public function testGetInactiveCart ()
133120 {
134- $ quote = $ this ->quoteFactory ->create ();
135- $ this ->quoteResource ->load ($ quote , 'test_order_with_simple_product_without_address ' , 'reserved_order_id ' );
136- $ quote ->setCustomerId (1 );
137- $ quote ->setIsActive (false );
138- $ this ->quoteResource ->save ($ quote );
139- $ maskedQuoteId = $ this ->quoteIdToMaskedId ->execute ((int )$ quote ->getId ());
140-
141- $ query = $ this ->getCartQuery ($ maskedQuoteId );
121+ $ maskedQuoteId = $ this ->getMaskedQuoteIdByReservedOrderId ->execute ('test_quote ' );
122+ $ query = $ this ->getQuery ($ maskedQuoteId );
142123
143124 $ this ->graphQlQuery ($ query , [], '' , $ this ->getHeaderMap ());
144125 }
@@ -147,12 +128,11 @@ public function testGetInactiveCart()
147128 * @param string $maskedQuoteId
148129 * @return string
149130 */
150- private function getCartQuery (
151- string $ maskedQuoteId
152- ) : string {
131+ private function getQuery (string $ maskedQuoteId ): string
132+ {
153133 return <<<QUERY
154134{
155- cart(cart_id: " $ maskedQuoteId") {
135+ cart(cart_id: " { $ maskedQuoteId} ") {
156136 items {
157137 id
158138 qty
0 commit comments