Skip to content

Commit f494a5f

Browse files
authored
ENGCOM-9374: MFTF: Shipping To Multiple Addresses If Maximum QTY Limit Was Reached #33372
2 parents 226e725 + 5c24f5d commit f494a5f

6 files changed

+129
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
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+
<actionGroups xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10+
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/actionGroupSchema.xsd">
11+
<actionGroup name="StorefrontUpdateProductQTYOnShoppingCartPageActionGroup">
12+
<arguments>
13+
<argument name="product" type="entity"/>
14+
<argument name="qty" type="string"/>
15+
</arguments>
16+
<fillField selector="{{CheckoutCartProductSection.ProductQuantityByName(product)}}" userInput="{{qty}}" stepKey="changeCartQty"/>
17+
<click selector="{{CheckoutCartProductSection.updateShoppingCartButton}}" stepKey="clickUpdateShoppingCart"/>
18+
<waitForPageLoad stepKey="waitForCheckoutPageLoad"/>
19+
</actionGroup>
20+
</actionGroups>

app/code/Magento/Checkout/Test/Mftf/Section/CheckoutCartSummarySection.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,5 +38,6 @@
3838
<element name="shippingMethodElementId" type="radio" selector="#s_method_{{carrierCode}}_{{methodCode}}" parameterized="true" timeout="30"/>
3939
<element name="estimateShippingAndTaxForm" type="block" selector="#shipping-zip-form"/>
4040
<element name="proceedToCheckoutDisabled" type="button" selector=".action.primary.checkout.disabled" timeout="60"/>
41+
<element name="checkoutWithMultipleAddresses" type="button" selector=".cart-summary .action.multicheckout"/>
4142
</section>
4243
</sections>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
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+
<actionGroups xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10+
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/actionGroupSchema.xsd">
11+
<actionGroup name="AssertStorefrontMultiShippingOptionIsNotPresentOnShoppingCartPageActionGroup">
12+
<dontSeeElement selector="{{CheckoutCartSummarySection.checkoutWithMultipleAddresses}}" stepKey="seeMultiCheckoutBtn"/>
13+
</actionGroup>
14+
</actionGroups>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
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+
<actionGroups xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10+
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/actionGroupSchema.xsd">
11+
<actionGroup name="AssertStorefrontMultiShippingOptionIsPresentOnShoppingCartPageActionGroup">
12+
<seeElement selector="{{CheckoutCartSummarySection.checkoutWithMultipleAddresses}}" stepKey="dontSeeMultiCheckoutBtn"/>
13+
</actionGroup>
14+
</actionGroups>
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
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+
<entities xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10+
xsi:noNamespaceSchemaLocation="urn:magento:mftf:DataGenerator/etc/dataProfileSchema.xsd">
11+
<entity name="MaximumQtyAllowed2ForShippingToMultipleAddressesConfigData">
12+
<data key="path">multishipping/options/checkout_multiple_maximum_qty</data>
13+
<data key="value">2</data>
14+
</entity>
15+
<!-- Magento Default Value -->
16+
<entity name="MaximumQtyAllowed100ForShippingToMultipleAddressesConfigData">
17+
<data key="path">multishipping/options/checkout_multiple_maximum_qty</data>
18+
<data key="value">100</data>
19+
</entity>
20+
</entities>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
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="StorefrontCheckoutShippingToMultipleAddressesIfMaximumQtyLimitWasReachedTest">
12+
<annotations>
13+
<features value="Sales"/>
14+
<stories value="Order Placement With Maximum QTY Limit for Shipping To Multiple Addresses"/>
15+
<title value="Maximum QTY Limit for Shipping To Multiple Addresses Was Reached"/>
16+
<description value="Customer should not be able ship to multiple addresses if Maximum QTY limit was reached in shopping cart"/>
17+
<severity value="MAJOR"/>
18+
<group value="checkout"/>
19+
</annotations>
20+
<before>
21+
<magentoCLI command="config:set {{MaximumQtyAllowed2ForShippingToMultipleAddressesConfigData.path}} {{MaximumQtyAllowed2ForShippingToMultipleAddressesConfigData.value}}" stepKey="setMaximumQty2"/>
22+
<createData entity="Simple_US_Customer" stepKey="createCustomer"/>
23+
<createData entity="SimpleSubCategory" stepKey="createCategory"/>
24+
<createData entity="SimpleProduct" stepKey="createProduct">
25+
<requiredEntity createDataKey="createCategory"/>
26+
</createData>
27+
<actionGroup ref="CliCacheCleanActionGroup" stepKey="cleanInvalidatedCaches">
28+
<argument name="tags" value="config full_page"/>
29+
</actionGroup>
30+
</before>
31+
<after>
32+
<magentoCLI command="config:set {{MaximumQtyAllowed100ForShippingToMultipleAddressesConfigData.path}} {{MaximumQtyAllowed100ForShippingToMultipleAddressesConfigData.value}}" stepKey="setDefaultMaximumQty"/>
33+
<deleteData createDataKey="createCategory" stepKey="deleteCategory"/>
34+
<deleteData createDataKey="createProduct" stepKey="deleteProduct"/>
35+
<actionGroup ref="StorefrontCustomerLogoutActionGroup" stepKey="logoutCustomer"/>
36+
<deleteData createDataKey="createCustomer" stepKey="deleteCustomer"/>
37+
<actionGroup ref="CliCacheCleanActionGroup" stepKey="cleanInvalidatedCaches">
38+
<argument name="tags" value="config full_page"/>
39+
</actionGroup>
40+
</after>
41+
42+
<actionGroup ref="LoginToStorefrontActionGroup" stepKey="loginToStorefrontAccount">
43+
<argument name="Customer" value="$createCustomer$"/>
44+
</actionGroup>
45+
<actionGroup ref="OpenProductFromCategoryPageActionGroup" stepKey="openProductFromCategory">
46+
<argument name="category" value="$createCategory$"/>
47+
<argument name="product" value="$createProduct$"/>
48+
</actionGroup>
49+
<actionGroup ref="StorefrontAddProductToCartWithQtyActionGroup" stepKey="addProductToTheCart">
50+
<argument name="productQty" value="1"/>
51+
</actionGroup>
52+
<actionGroup ref="StorefrontCartPageOpenActionGroup" stepKey="navigateToCartPage"/>
53+
<actionGroup ref="AssertStorefrontMultiShippingOptionIsPresentOnShoppingCartPageActionGroup" stepKey="assertMultiCheckoutAvailable"/>
54+
<actionGroup ref="StorefrontUpdateProductQTYOnShoppingCartPageActionGroup" stepKey="updateProductQty">
55+
<argument name="product" value="$createProduct.name$"/>
56+
<argument name="qty" value="3"/>
57+
</actionGroup>
58+
<actionGroup ref="AssertStorefrontMultiShippingOptionIsNotPresentOnShoppingCartPageActionGroup" stepKey="assertMultiCheckoutIsNotAvailable"/>
59+
</test>
60+
</tests>

0 commit comments

Comments
 (0)