5
5
*/
6
6
declare (strict_types=1 );
7
7
8
- namespace Magento \GraphQl \Quote ;
8
+ namespace Magento \GraphQl \ConfigurableProduct ;
9
9
10
+ use Magento \GraphQl \Quote \GetMaskedQuoteIdByReservedOrderId ;
10
11
use Magento \TestFramework \Helper \Bootstrap ;
11
12
use Magento \TestFramework \TestCase \GraphQlAbstract ;
12
- use Magento \Quote \Model \Quote ;
13
- use Magento \Quote \Model \QuoteIdToMaskedQuoteIdInterface ;
14
- use Magento \Quote \Model \ResourceModel \Quote as QuoteResource ;
15
13
14
+ /**
15
+ * Add configurable product to cart testcases
16
+ */
16
17
class AddConfigurableProductToCartTest extends GraphQlAbstract
17
18
{
18
19
/**
19
- * @var QuoteResource
20
- */
21
- private $ quoteResource ;
22
-
23
- /**
24
- * @var Quote
20
+ * @var GetMaskedQuoteIdByReservedOrderId
25
21
*/
26
- private $ quote ;
27
-
28
- /**
29
- * @var QuoteIdToMaskedQuoteIdInterface
30
- */
31
- private $ quoteIdToMaskedId ;
22
+ private $ getMaskedQuoteIdByReservedOrderId ;
32
23
33
24
/**
34
25
* @inheritdoc
35
26
*/
36
27
protected function setUp ()
37
28
{
38
29
$ objectManager = Bootstrap::getObjectManager ();
39
- $ this ->quoteResource = $ objectManager ->get (QuoteResource::class);
40
- $ this ->quote = $ objectManager ->create (Quote::class);
41
- $ this ->quoteIdToMaskedId = $ objectManager ->get (QuoteIdToMaskedQuoteIdInterface::class);
30
+ $ this ->getMaskedQuoteIdByReservedOrderId = $ objectManager ->get (GetMaskedQuoteIdByReservedOrderId::class);
42
31
}
43
32
44
33
/**
@@ -49,12 +38,11 @@ public function testAddConfigurableProductToCart()
49
38
{
50
39
$ variantSku = 'simple_41 ' ;
51
40
$ qty = 2 ;
41
+ $ maskedQuoteId = $ this ->getMaskedQuoteIdByReservedOrderId ->execute ('test_order_1 ' );
52
42
53
- $ maskedQuoteId = $ this ->getMaskedQuoteId ();
54
-
55
- $ query = $ this ->getAddConfigurableProductMutationQuery ($ maskedQuoteId , $ variantSku , $ qty );
56
-
43
+ $ query = $ this ->getQuery ($ maskedQuoteId , $ variantSku , $ qty );
57
44
$ response = $ this ->graphQlQuery ($ query );
45
+
58
46
$ cartItems = $ response ['addConfigurableProductsToCart ' ]['cart ' ]['items ' ];
59
47
self ::assertEquals ($ qty , $ cartItems [0 ]['qty ' ]);
60
48
self ::assertEquals ($ variantSku , $ cartItems [0 ]['product ' ]['sku ' ]);
@@ -70,10 +58,9 @@ public function testAddProductIfQuantityIsNotAvailable()
70
58
{
71
59
$ variantSku = 'simple_41 ' ;
72
60
$ qty = 200 ;
61
+ $ maskedQuoteId = $ this ->getMaskedQuoteIdByReservedOrderId ->execute ('test_order_1 ' );
73
62
74
- $ maskedQuoteId = $ this ->getMaskedQuoteId ();
75
- $ query = $ this ->getAddConfigurableProductMutationQuery ($ maskedQuoteId , $ variantSku , $ qty );
76
-
63
+ $ query = $ this ->getQuery ($ maskedQuoteId , $ variantSku , $ qty );
77
64
$ this ->graphQlQuery ($ query );
78
65
}
79
66
@@ -87,35 +74,19 @@ public function testAddOutOfStockProduct()
87
74
{
88
75
$ variantSku = 'simple_1010 ' ;
89
76
$ qty = 1 ;
90
- $ maskedQuoteId = $ this ->getMaskedQuoteId ();
91
- $ query = $ this ->getAddConfigurableProductMutationQuery ($ maskedQuoteId , $ variantSku , $ qty );
77
+ $ maskedQuoteId = $ this ->getMaskedQuoteIdByReservedOrderId ->execute ('test_order_1 ' );
92
78
79
+ $ query = $ this ->getQuery ($ maskedQuoteId , $ variantSku , $ qty );
93
80
$ this ->graphQlQuery ($ query );
94
81
}
95
82
96
- /**
97
- * @magentoApiDataFixture Magento/Checkout/_files/active_quote.php
98
- * @return string
99
- * @throws \Magento\Framework\Exception\NoSuchEntityException
100
- */
101
- private function getMaskedQuoteId ()
102
- {
103
- $ this ->quoteResource ->load (
104
- $ this ->quote ,
105
- 'test_order_1 ' ,
106
- 'reserved_order_id '
107
- );
108
- return $ this ->quoteIdToMaskedId ->execute ((int )$ this ->quote ->getId ());
109
- }
110
-
111
83
/**
112
84
* @param string $maskedQuoteId
113
- * @param string $sku
85
+ * @param string $variantSku
114
86
* @param int $qty
115
- *
116
87
* @return string
117
88
*/
118
- private function getAddConfigurableProductMutationQuery (string $ maskedQuoteId , string $ variantSku , int $ qty ): string
89
+ private function getQuery (string $ maskedQuoteId , string $ variantSku , int $ qty ): string
119
90
{
120
91
return <<<QUERY
121
92
mutation {
0 commit comments