Skip to content

Commit 23a4142

Browse files
chandrakalahanchinalmohit-adobe
authored andcommitted
[AC-7442] To check functionality of cart price rule.
initial commit files added
1 parent ceb4ddc commit 23a4142

File tree

2 files changed

+96
-0
lines changed

2 files changed

+96
-0
lines changed

app/code/Magento/SalesRule/Test/Mftf/Data/SalesRuleData.xml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -704,4 +704,21 @@
704704
<data key="apply">Percent of product price discount</data>
705705
<data key="discountAmount">10</data>
706706
</entity>
707+
<entity name="CartPriceRuleWithMaximumQuantity1">
708+
<data key="name" unique="suffix">Cart Price Rule WithMaximum Quantity 1</data>
709+
<data key="description">Description for Cart Price Rule</data>
710+
<data key="is_active">Yes</data>
711+
<data key="websites">Main Website</data>
712+
<data key="customerGroups">NOT LOGGED IN</data>
713+
<data key="coupon_type">No Coupon</data>
714+
<data key="totalItemQuantity">3</data>
715+
<data key="simple_action">Percent of product price discount</data>
716+
<data key="discount_amount">60</data>
717+
<data key="maximumQtyDiscount">1</data>
718+
<data key="discount_step">1</data>
719+
<data key="apply_to_shipping">0</data>
720+
<data key="simple_free_shipping">No</data>
721+
<data key="defaultRuleLabelAllStoreViews">Total Items Quantity-Not Applied test</data>
722+
<data key="defaultStoreView">Total Items Quantity-Not Applied test</data>
723+
</entity>
707724
</entities>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
/**
4+
* Copyright 2024 Adobe
5+
* All Rights Reserved.
6+
*/
7+
-->
8+
9+
<tests xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/testSchema.xsd">
10+
<test name="StoreFrontVerifyCartPriceRuleWithMaximumQuantityActionTest">
11+
<annotations>
12+
<features value="SalesRule"/>
13+
<stories value="Cart Price rule with Maximum quantity"/>
14+
<title value="To check functionality of cart price rule"/>
15+
<description value="Verify Cart Price rule with maximum quantity 1 applies discount for only 1 quantity of product in cart and discount should not be applied for higher product qty."/>
16+
<severity value="MAJOR"/>
17+
<testCaseId value="AC-7442"/>
18+
<group value="SalesRule"/>
19+
</annotations>
20+
<before>
21+
<!-- create simple product -->
22+
<createData entity="SimpleProduct" stepKey="createSimpleProduct">
23+
<field key="price">1000.00</field>
24+
</createData>
25+
<!-- admin login -->
26+
<actionGroup ref="AdminLoginActionGroup" stepKey="loginAsAdmin"/>
27+
<!-- create cart price rule -->
28+
<actionGroup ref="AdminCartPriceRuleDeleteAllActionGroup" stepKey="deleteAllExistingCartPriceRules"/>
29+
<actionGroup ref="AdminCartPriceRuleMultiCustomerActionGroup" stepKey="fillCartPriceRuleMainInfo">
30+
<argument name="ruleName" value="CartPriceRuleWithMaximumQuantity1"/>
31+
</actionGroup>
32+
<actionGroup ref="AdminCreateCartPriceRuleActionsSectionDiscountFieldsActionGroup" stepKey="fillCartPriceRuleActionsSection">
33+
<argument name="rule" value="CartPriceRuleWithMaximumQuantity1"/>
34+
</actionGroup>
35+
<actionGroup ref="AdminCartPriceRuleSaveActionGroup" stepKey="saveCartPriceRule"/>
36+
<!-- run indexer -->
37+
<actionGroup ref="CliIndexerReindexActionGroup" stepKey="reindex">
38+
<argument name="indices" value=""/>
39+
</actionGroup>
40+
</before>
41+
<after>
42+
<!-- delete product -->
43+
<deleteData stepKey="deleteProduct" createDataKey="createSimpleProduct"/>
44+
<!-- delete cart price rule -->
45+
<actionGroup ref="DeleteCartPriceRuleByName" stepKey="deleteCartPriceRule">
46+
<argument name="ruleName" value="{{CartPriceRuleWithMaximumQuantity1.name}}"/>
47+
</actionGroup>
48+
<!-- run indexer -->
49+
<actionGroup ref="CliIndexerReindexActionGroup" stepKey="reindex">
50+
<argument name="indices" value=""/>
51+
</actionGroup>
52+
<actionGroup ref="AdminLogoutActionGroup" stepKey="logout"/>
53+
</after>
54+
<!-- Go to frontend -->
55+
<actionGroup ref="StorefrontOpenHomePageActionGroup" stepKey="goToFrontend"/>
56+
<!-- open product page -->
57+
<amOnPage url="{{StorefrontProductPage.url($$createSimpleProduct.custom_attributes[url_key]$$)}}" stepKey="amOnProductPage"/>
58+
<!-- add product to cart -->
59+
<actionGroup ref="AddToCartFromStorefrontProductPageActionGroup" stepKey="addToCartFromStorefrontProductPage">
60+
<argument name="productName" value="$$createSimpleProduct.name$$"/>
61+
</actionGroup>
62+
<!-- Go to the shopping cart page -->
63+
<actionGroup ref="StorefrontCartPageOpenActionGroup" stepKey="amOnPageShoppingCart"/>
64+
<actionGroup ref="AssertStorefrontCartDiscountActionGroup" stepKey="seeDiscountAmount">
65+
<argument name="discount" value="600.00"/>
66+
</actionGroup>
67+
<!--update quantity to 2-->
68+
<actionGroup ref="StorefrontUpdateProductQTYOnShoppingCartPageActionGroup" stepKey="updateProductQty">
69+
<argument name="product" value="$createSimpleProduct.name$"/>
70+
<argument name="qty" value="2"/>
71+
</actionGroup>
72+
<!-- verify quantity updated-->
73+
<seeInField userInput="2" selector="{{CheckoutCartProductSection.ProductQuantityByName($$createSimpleProduct.name$$)}}" stepKey="seeInProductQtyInCart"/>
74+
<!-- verify discount is applied for only one product -->
75+
<actionGroup ref="AssertStorefrontCartDiscountActionGroup" stepKey="seeDiscountAmount1">
76+
<argument name="discount" value="600.00"/>
77+
</actionGroup>
78+
</test>
79+
</tests>

0 commit comments

Comments
 (0)