Skip to content

Commit 2b8b9d5

Browse files
committed
1190: CreateOrderBackendPartOneTest rework to support MSI reservation mechanism.
1 parent 55256fa commit 2b8b9d5

File tree

4 files changed

+36
-19
lines changed

4 files changed

+36
-19
lines changed

dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/Actions.php

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -137,6 +137,16 @@ class Actions extends Block
137137
*/
138138
protected $confirmModal = '.confirm._show[data-role=modal]';
139139

140+
/**
141+
* Is shipment can be created.
142+
*
143+
* @return bool
144+
*/
145+
public function canShip()
146+
{
147+
return $this->_rootElement->find($this->ship)->isVisible();
148+
}
149+
140150
/**
141151
* Ship order.
142152
*

dev/tests/functional/tests/app/Magento/Sales/Test/TestCase/CreateOrderBackendPartOneTest.xml

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,10 @@
1919
<item name="grandTotal" xsi:type="string">425.00</item>
2020
</data>
2121
<data name="payment/method" xsi:type="string">cashondelivery</data>
22-
<data name="status" xsi:type="string">Pending</data>
23-
<data name="orderButtonsAvailable" xsi:type="string">Back, Reorder, Cancel, Send Email, Hold, Invoice, Ship, Edit</data>
22+
<data name="status" xsi:type="string">Processing</data>
23+
<data name="orderButtonsAvailable" xsi:type="string">Back, Reorder, Cancel, Send Email, Invoice, Edit</data>
2424
<data name="configData" xsi:type="string">cashondelivery</data>
25-
<constraint name="Magento\Sales\Test\Constraint\AssertOrderSuccessCreateMessage" />
25+
<constraint name="Magento\Shipping\Test\Constraint\AssertShipmentSuccessCreateMessage" />
2626
<constraint name="Magento\Sales\Test\Constraint\AssertOrderButtonsAvailable" />
2727
<constraint name="Magento\Sales\Test\Constraint\AssertOrderGrandTotal" />
2828
<constraint name="Magento\Sales\Test\Constraint\AssertOrderInOrdersGrid" />
@@ -42,7 +42,6 @@
4242
<data name="status" xsi:type="string">Pending</data>
4343
<data name="orderButtonsAvailable" xsi:type="string">Back, Cancel, Send Email, Hold, Invoice, Edit</data>
4444
<data name="configData" xsi:type="string">checkmo_specificcountry_gb</data>
45-
<constraint name="Magento\Sales\Test\Constraint\AssertOrderSuccessCreateMessage" />
4645
<constraint name="Magento\Sales\Test\Constraint\AssertOrderButtonsAvailable" />
4746
<constraint name="Magento\Sales\Test\Constraint\AssertOrderGrandTotal" />
4847
<constraint name="Magento\Sales\Test\Constraint\AssertOrderInOrdersGrid" />
@@ -59,10 +58,10 @@
5958
<item name="grandTotal" xsi:type="string">565.00</item>
6059
</data>
6160
<data name="payment/method" xsi:type="string">banktransfer</data>
62-
<data name="status" xsi:type="string">Pending</data>
63-
<data name="orderButtonsAvailable" xsi:type="string">Back, Cancel, Send Email, Hold, Reorder, Invoice, Edit</data>
61+
<data name="status" xsi:type="string">Processing</data>
62+
<data name="orderButtonsAvailable" xsi:type="string">Back, Cancel, Send Email, Reorder, Invoice, Edit</data>
6463
<data name="configData" xsi:type="string">banktransfer</data>
65-
<constraint name="Magento\Sales\Test\Constraint\AssertOrderSuccessCreateMessage" />
64+
<constraint name="Magento\Shipping\Test\Constraint\AssertShipmentSuccessCreateMessage" />
6665
<constraint name="Magento\Sales\Test\Constraint\AssertOrderButtonsAvailable" />
6766
<constraint name="Magento\Sales\Test\Constraint\AssertOrderGrandTotal" />
6867
<constraint name="Magento\Sales\Test\Constraint\AssertOrderInOrdersGrid" />
@@ -84,7 +83,6 @@
8483
<data name="status" xsi:type="string">Pending</data>
8584
<data name="orderButtonsAvailable" xsi:type="string">Back, Cancel, Send Email, Hold, Invoice, Edit</data>
8685
<data name="configData" xsi:type="string">freeshipping_specificcountry_gb, banktransfer</data>
87-
<constraint name="Magento\Sales\Test\Constraint\AssertOrderSuccessCreateMessage" />
8886
<constraint name="Magento\Sales\Test\Constraint\AssertOrderButtonsAvailable" />
8987
<constraint name="Magento\Sales\Test\Constraint\AssertOrderGrandTotal" />
9088
<constraint name="Magento\Sales\Test\Constraint\AssertOrderInOrdersGrid" />
@@ -103,10 +101,10 @@
103101
</data>
104102
<data name="payment/method" xsi:type="string">purchaseorder</data>
105103
<data name="payment/po_number" xsi:type="string">123456</data>
106-
<data name="status" xsi:type="string">Pending</data>
107-
<data name="orderButtonsAvailable" xsi:type="string">Back, Cancel, Send Email, Hold, Invoice, Reorder, Edit</data>
104+
<data name="status" xsi:type="string">Processing</data>
105+
<data name="orderButtonsAvailable" xsi:type="string">Back, Cancel, Send Email, Invoice, Reorder, Edit</data>
108106
<data name="configData" xsi:type="string">purchaseorder</data>
109-
<constraint name="Magento\Sales\Test\Constraint\AssertOrderSuccessCreateMessage" />
107+
<constraint name="Magento\Shipping\Test\Constraint\AssertShipmentSuccessCreateMessage" />
110108
<constraint name="Magento\Sales\Test\Constraint\AssertOrderButtonsAvailable" />
111109
<constraint name="Magento\Sales\Test\Constraint\AssertOrderGrandTotal" />
112110
<constraint name="Magento\Sales\Test\Constraint\AssertOrderInOrdersGrid" />
@@ -127,7 +125,7 @@
127125
<item name="grandTotal" xsi:type="string">21.91</item>
128126
</data>
129127
<data name="payment/method" xsi:type="string">checkmo</data>
130-
<constraint name="Magento\Sales\Test\Constraint\AssertOrderSuccessCreateMessage" />
128+
<constraint name="Magento\Shipping\Test\Constraint\AssertShipmentSuccessCreateMessage" />
131129
<constraint name="Magento\Sales\Test\Constraint\AssertOrderGrandTotal" />
132130
</variation>
133131
<variation name="CreateOrderBackendTestVariation7" summary="Create Order for New Customer in Admin with Offline Payment Method" ticketId="MAGETWO-12520">
@@ -145,7 +143,7 @@
145143
<item name="grandTotal" xsi:type="string">21.91</item>
146144
</data>
147145
<data name="payment/method" xsi:type="string">checkmo</data>
148-
<constraint name="Magento\Sales\Test\Constraint\AssertOrderSuccessCreateMessage" />
146+
<constraint name="Magento\Shipping\Test\Constraint\AssertShipmentSuccessCreateMessage" />
149147
<constraint name="Magento\Sales\Test\Constraint\AssertOrderGrandTotal" />
150148
<constraint name="Magento\Customer\Test\Constraint\AssertCustomerForm" />
151149
</variation>

dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/CreateShipmentStep.php

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -99,13 +99,21 @@ public function run()
9999
{
100100
$this->orderIndex->open();
101101
$this->orderIndex->getSalesOrderGrid()->searchAndOpen(['id' => $this->order->getId()]);
102-
$this->salesOrderView->getPageActions()->ship();
103-
if (!empty($this->data)) {
104-
$this->orderShipmentNew->getFormBlock()->fillData($this->data, $this->order->getEntityId()['products']);
102+
$shipmentIds = [];
103+
/**
104+
* As this step is used in general scenarios and not all test cases has shippable items(ex: virtual product)
105+
* we need to check, if it possible to create shipment for given order.
106+
*/
107+
if ($this->salesOrderView->getPageActions()->canShip()) {
108+
$this->salesOrderView->getPageActions()->ship();
109+
if (!empty($this->data)) {
110+
$this->orderShipmentNew->getFormBlock()->fillData($this->data, $this->order->getEntityId()['products']);
111+
}
112+
$this->orderShipmentNew->getFormBlock()->submit();
113+
$shipmentIds = $this->getShipmentIds();
105114
}
106-
$this->orderShipmentNew->getFormBlock()->submit();
107115

108-
return ['shipmentIds' => $this->getShipmentIds()];
116+
return ['shipmentIds' => $shipmentIds];
109117
}
110118

111119
/**

dev/tests/functional/tests/app/Magento/Sales/Test/etc/testcase.xml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,8 @@
5454
<step name="fillShippingAddress" module="Magento_Sales" next="selectShippingMethodForOrder" />
5555
<step name="selectShippingMethodForOrder" module="Magento_Sales" next="selectPaymentMethodForOrder" />
5656
<step name="selectPaymentMethodForOrder" module="Magento_Sales" next="submitOrder" />
57-
<step name="submitOrder" module="Magento_Sales" />
57+
<step name="submitOrder" module="Magento_Sales" next="createShipment" />
58+
<step name="createShipment" module="Magento_Sales"/>
5859
</scenario>
5960
<scenario name="VoidAuthorizationTest" firstStep="setupConfiguration">
6061
<step name="setupConfiguration" module="Magento_Config" next="createProducts" />

0 commit comments

Comments
 (0)