Skip to content

Commit bbebf15

Browse files
committed
ACP2E-1120: add mftf
1 parent 8679703 commit bbebf15

File tree

2 files changed

+229
-0
lines changed

2 files changed

+229
-0
lines changed
Lines changed: 130 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,130 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
/**
4+
* Copyright © Magento, Inc. All rights reserved.
5+
* See COPYING.txt for license details.
6+
*/
7+
-->
8+
9+
<tests xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10+
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/testSchema.xsd">
11+
<test name="AdminCheckZeroSubtotalOrderWithCustomStatus">
12+
<annotations>
13+
<features value="Checkout"/>
14+
<stories value="ACP2E-1120: Zero Subtotal Orders should have invoice generated."/>
15+
<title value="Zero Subtotal Orders should have invoice generated when setting 'Automatically Invoice All Items' to Yes." />
16+
<description value="Created order should have invoice generated."/>
17+
<testCaseId value="ACP2E-1120"/>
18+
<group value="checkout"/>
19+
</annotations>
20+
<before>
21+
<createData entity="SimpleSubCategory" stepKey="simplecategory"/>
22+
<createData entity="SimpleProduct" stepKey="simpleproduct">
23+
<requiredEntity createDataKey="simplecategory"/>
24+
</createData>
25+
<createData entity="PaymentMethodsSettingConfig" stepKey="paymentMethodsSettingConfig"/>
26+
<createData entity="FreeShippingMethodsSettingConfig" stepKey="freeShippingMethodsSettingConfig"/>
27+
<actionGroup ref="CliCacheCleanActionGroup" stepKey="cleanInvalidatedCaches">
28+
<argument name="tags" value="config full_page"/>
29+
</actionGroup>
30+
31+
<createData entity="ApiSalesRule" stepKey="createCartPriceRule">
32+
<field key="discount_amount">100</field>
33+
</createData>
34+
<createData entity="ApiSalesRuleCoupon" stepKey="createCartPriceRuleCoupon">
35+
<requiredEntity createDataKey="createCartPriceRule"/>
36+
</createData>
37+
38+
<actionGroup ref="AdminLoginActionGroup" stepKey="loginAsAdmin"/>
39+
40+
</before>
41+
42+
<after>
43+
<deleteData createDataKey="simplecategory" stepKey="deleteCategory"/>
44+
<deleteData createDataKey="simpleproduct" stepKey="deleteProduct"/>
45+
<createData entity="DisablePaymentMethodsSettingConfig" stepKey="disablePaymentMethodsSettingConfig"/>
46+
<createData entity="DefaultShippingMethodsConfig" stepKey="defaultShippingMethodsConfig"/>
47+
<createData entity="DisableFreeShippingConfig" stepKey="disableFreeShippingConfig"/>
48+
<deleteData createDataKey="createCartPriceRule" stepKey="deleteSalesRule"/>
49+
<actionGroup ref="CliIndexerReindexActionGroup" stepKey="reindex">
50+
<argument name="indices" value=""/>
51+
</actionGroup>
52+
<actionGroup ref="CliCacheCleanActionGroup" stepKey="cleanInvalidatedCaches">
53+
<argument name="tags" value="config full_page"/>
54+
</actionGroup>
55+
<actionGroup ref="AdminLogoutActionGroup" stepKey="logout"/>
56+
</after>
57+
58+
<!-- Go to new order status page -->
59+
<actionGroup ref="AdminGoToOrderStatusPageActionGroup" stepKey="goToOrderStatusPage"/>
60+
<actionGroup ref="AdminClickCreateNewStatusButtonOnOrderStatusPageActionGroup" stepKey="clickCreateNewStatus"/>
61+
62+
<!-- Fill the form and validate message -->
63+
<actionGroup ref="AdminOrderStatusFormFillAndSave" stepKey="fillFormAndClickSave">
64+
<argument name="status" value="{{defaultOrderStatus.status}}"/>
65+
<argument name="label" value="{{defaultOrderStatus.label}}"/>
66+
</actionGroup>
67+
<actionGroup ref="AssertOrderStatusFormSaveSuccess" stepKey="seeFormSaveSuccess"/>
68+
69+
<!-- Verify the order status grid page shows the order status we just created -->
70+
<actionGroup ref="AssertOrderStatusExistsInGrid" stepKey="searchCreatedOrderStatus">
71+
<argument name="status" value="{{defaultOrderStatus.status}}"/>
72+
<argument name="label" value="{{defaultOrderStatus.label}}"/>
73+
</actionGroup>
74+
75+
<!-- Assign status to state -->
76+
<click selector="{{AdminOrderStatusGridSection.assignStatusToStateBtn}}" stepKey="clickAssignStatusBtn"/>
77+
<selectOption selector="{{AdminAssignOrderStatusToStateSection.orderStatus}}" userInput="{{defaultOrderStatus.status}}" stepKey="selectOrderStatus"/>
78+
<selectOption selector="{{AdminAssignOrderStatusToStateSection.orderState}}" userInput="{{OrderState.new}}" stepKey="selectOrderState"/>
79+
<checkOption selector="{{AdminAssignOrderStatusToStateSection.orderStatusAsDefault}}" stepKey="orderStatusAsDefault"/>
80+
<uncheckOption selector="{{AdminAssignOrderStatusToStateSection.visibleOnStorefront}}" stepKey="visibleOnStorefront"/>
81+
<click selector="{{AdminAssignOrderStatusToStateSection.saveStatusAssignment}}" stepKey="clickSaveStatus"/>
82+
<see selector="{{AdminMessagesSection.success}}" userInput="You assigned the order status." stepKey="seeSuccess"/>
83+
84+
<!-- Prepare data for constraints -->
85+
<magentoCLI command="config:set {{EnableCheckmoOrderStatusPending.path}} {{defaultOrderStatus.label}}" stepKey="enableNewOrderStatus"/>
86+
<actionGroup ref="CliCacheCleanActionGroup" stepKey="cleanInvalidatedCaches">
87+
<argument name="tags" value="config full_page"/>
88+
</actionGroup>
89+
90+
<actionGroup ref="AddSimpleProductToCartActionGroup" stepKey="AddProductToCard">
91+
<argument name="product" value="$$simpleproduct$$"/>
92+
</actionGroup>
93+
94+
<actionGroup ref="GoToCheckoutFromMinicartActionGroup" stepKey="clickToProceedToCheckout"/>
95+
96+
<actionGroup ref="ShipmentFormFreeShippingActionGroup" stepKey="shipmentFormFreeShippingActionGroup"/>
97+
98+
<actionGroup ref="StorefrontApplyDiscountCodeActionGroup" stepKey="applyDiscountCoupon">
99+
<argument name="discountCode" value="$createCartPriceRuleCoupon.code$"/>
100+
</actionGroup>
101+
102+
<actionGroup ref="ClickPlaceOrderActionGroup" stepKey="clickPlaceOrder"/>
103+
<grabTextFrom selector="{{CheckoutSuccessMainSection.orderNumber}}" stepKey="grabOrderNumber"/>
104+
105+
<actionGroup ref="AdminOrdersPageOpenActionGroup" stepKey="navigateToSalesOrderPage"/>
106+
<actionGroup ref="SearchAdminDataGridByKeywordActionGroup" stepKey="searchForOrder">
107+
<argument name="keyword" value="{$grabOrderNumber}"/>
108+
</actionGroup>
109+
110+
<actionGroup ref="AdminCheckOrderStatusInGridActionGroup" stepKey="seeOrderStatusInGrid">
111+
<argument name="orderId" value="$grabOrderNumber"/>
112+
<argument name="status" value="Processing"/>
113+
</actionGroup>
114+
115+
<!-- Assert invoice in invoices grid -->
116+
<actionGroup ref="FilterInvoiceGridByOrderIdWithCleanFiltersActionGroup" stepKey="filterInvoiceGridByOrderId">
117+
<argument name="orderId" value="$orderNumber"/>
118+
</actionGroup>
119+
<click selector="{{AdminInvoicesGridSection.firstRow}}" stepKey="opeCreatedInvoice"/>
120+
<waitForPageLoad stepKey="waitForInvoiceDetailsPageToLoad"/>
121+
<grabFromCurrentUrl regex="~/invoice_id/(\d+)/~" stepKey="grabInvoiceId"/>
122+
123+
<!-- Assert no invoice button -->
124+
<actionGroup ref="AdminOpenOrderByEntityIdActionGroup" stepKey="openOrder2">
125+
<argument name="entityId" value="{$orderId}"/>
126+
</actionGroup>
127+
<dontSeeElement selector="{{AdminOrderDetailsMainActionsSection.invoiceBtn}}" stepKey="dontSeeInvoiceBtn"/>
128+
129+
</test>
130+
</tests>
Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
/**
4+
* Copyright © Magento, Inc. All rights reserved.
5+
* See COPYING.txt for license details.
6+
*/
7+
-->
8+
9+
<tests xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10+
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/testSchema.xsd">
11+
<test name="AdminCheckZeroSubtotalOrderWithGeneratedInvoiceTest">
12+
<annotations>
13+
<features value="Checkout"/>
14+
<stories value="ENGCOM-5443: Zero Subtotal Order with automatically invoice generated."/>
15+
<title value="Zero Subtotal Order should have invoice generated when setting 'Automatically Invoice All Items' to Yes." />
16+
<description value="Created order with automatically invoice generated."/>
17+
<severity value="MAJOR"/>
18+
<testCaseId value="ENGCOM-5443"/>
19+
<group value="checkout"/>
20+
</annotations>
21+
<before>
22+
<createData entity="SimpleSubCategory" stepKey="simplecategory"/>
23+
<createData entity="SimpleProduct" stepKey="simpleproduct">
24+
<requiredEntity createDataKey="simplecategory"/>
25+
</createData>
26+
<createData entity="PaymentMethodsSettingConfig" stepKey="paymentMethodsSettingConfig"/>
27+
<createData entity="FreeShippingMethodsSettingConfig" stepKey="freeShippingMethodsSettingConfig"/>
28+
<actionGroup ref="CliCacheCleanActionGroup" stepKey="cleanInvalidatedCaches">
29+
<argument name="tags" value="config full_page"/>
30+
</actionGroup>
31+
32+
<createData entity="ApiSalesRule" stepKey="createCartPriceRule">
33+
<field key="discount_amount">100</field>
34+
</createData>
35+
<createData entity="ApiSalesRuleCoupon" stepKey="createCartPriceRuleCoupon">
36+
<requiredEntity createDataKey="createCartPriceRule"/>
37+
</createData>
38+
39+
<actionGroup ref="AdminLoginActionGroup" stepKey="loginAsAdmin"/>
40+
41+
</before>
42+
43+
<after>
44+
<deleteData createDataKey="simplecategory" stepKey="deleteCategory"/>
45+
<deleteData createDataKey="simpleproduct" stepKey="deleteProduct"/>
46+
<createData entity="DisablePaymentMethodsSettingConfig" stepKey="disablePaymentMethodsSettingConfig"/>
47+
<createData entity="DefaultShippingMethodsConfig" stepKey="defaultShippingMethodsConfig"/>
48+
<createData entity="DisableFreeShippingConfig" stepKey="disableFreeShippingConfig"/>
49+
<deleteData createDataKey="createCartPriceRule" stepKey="deleteSalesRule"/>
50+
<actionGroup ref="CliIndexerReindexActionGroup" stepKey="reindex">
51+
<argument name="indices" value=""/>
52+
</actionGroup>
53+
<actionGroup ref="CliCacheCleanActionGroup" stepKey="cleanInvalidatedCaches">
54+
<argument name="tags" value="config full_page"/>
55+
</actionGroup>
56+
<actionGroup ref="AdminLogoutActionGroup" stepKey="logout"/>
57+
</after>
58+
59+
<actionGroup ref="AddSimpleProductToCartActionGroup" stepKey="AddProductToCard">
60+
<argument name="product" value="$$simpleproduct$$"/>
61+
</actionGroup>
62+
63+
<actionGroup ref="GoToCheckoutFromMinicartActionGroup" stepKey="clickToProceedToCheckout"/>
64+
65+
<actionGroup ref="ShipmentFormFreeShippingActionGroup" stepKey="shipmentFormFreeShippingActionGroup"/>
66+
67+
<actionGroup ref="StorefrontApplyDiscountCodeActionGroup" stepKey="applyDiscountCoupon">
68+
<argument name="discountCode" value="$createCartPriceRuleCoupon.code$"/>
69+
</actionGroup>
70+
71+
<actionGroup ref="ClickPlaceOrderActionGroup" stepKey="clickPlaceOrder"/>
72+
<grabTextFrom selector="{{CheckoutSuccessMainSection.orderNumber}}" stepKey="grabOrderNumber"/>
73+
74+
<actionGroup ref="AdminOrdersPageOpenActionGroup" stepKey="navigateToSalesOrderPage"/>
75+
<actionGroup ref="SearchAdminDataGridByKeywordActionGroup" stepKey="searchForOrder">
76+
<argument name="keyword" value="{$grabOrderNumber}"/>
77+
</actionGroup>
78+
79+
<actionGroup ref="AdminCheckOrderStatusInGridActionGroup" stepKey="seeOrderStatusInGrid">
80+
<argument name="orderId" value="$grabOrderNumber"/>
81+
<argument name="status" value="Processing"/>
82+
</actionGroup>
83+
84+
<!-- Assert invoice in invoices grid -->
85+
<actionGroup ref="FilterInvoiceGridByOrderIdWithCleanFiltersActionGroup" stepKey="filterInvoiceGridByOrderId">
86+
<argument name="orderId" value="$orderNumber"/>
87+
</actionGroup>
88+
<click selector="{{AdminInvoicesGridSection.firstRow}}" stepKey="opeCreatedInvoice"/>
89+
<waitForPageLoad stepKey="waitForInvoiceDetailsPageToLoad"/>
90+
<grabFromCurrentUrl regex="~/invoice_id/(\d+)/~" stepKey="grabInvoiceId"/>
91+
92+
<!-- Assert no invoice button -->
93+
<actionGroup ref="AdminOpenOrderByEntityIdActionGroup" stepKey="openOrder2">
94+
<argument name="entityId" value="{$orderId}"/>
95+
</actionGroup>
96+
<dontSeeElement selector="{{AdminOrderDetailsMainActionsSection.invoiceBtn}}" stepKey="dontSeeInvoiceBtn"/>
97+
98+
</test>
99+
</tests>

0 commit comments

Comments
 (0)