Skip to content

Commit 5a487c2

Browse files
Merge pull request #10266 from magento-gl/ACQE-functional-deployment-version23
Bengals Functional Mainline deployment
2 parents 0a3b703 + 20163f9 commit 5a487c2

File tree

8 files changed

+553
-1
lines changed

8 files changed

+553
-1
lines changed
Lines changed: 195 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,195 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
/**
4+
* Copyright 2025 Adobe
5+
* All Rights Reserved.
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="StorefrontCheckPriceForFixedBundleProductWithSpecialPriceTest">
12+
<annotations>
13+
<features value="Bundle"/>
14+
<stories value="View bundle product price"/>
15+
<title value="Price for fixed bundle product with special price"/>
16+
<description value="This test case verifies price for fixed bundle product with special price"/>
17+
<testCaseId value="AC-4146"/>
18+
<severity value="MAJOR"/>
19+
<group value="bundle"/>
20+
</annotations>
21+
<before>
22+
<!--Pre Condition 1: Create category 1 -->
23+
<createData entity="SimpleSubCategory" stepKey="createSubCategory">
24+
<field key="name">Category 1</field>
25+
</createData>
26+
<!-- Pre Condition 2: Create simple products with specific price/status -->
27+
<createData entity="SimpleProduct2" stepKey="simple1">
28+
<field key="price">10</field>
29+
<field key="status">1</field>
30+
</createData>
31+
<createData entity="SimpleProduct2" stepKey="simple2">
32+
<field key="price">15</field>
33+
<field key="status">2</field>
34+
</createData>
35+
<createData entity="SimpleProduct2" stepKey="simple3">
36+
<field key="price">20</field>
37+
<field key="status">1</field>
38+
</createData>
39+
<createData entity="SimpleProduct2" stepKey="simple4">
40+
<field key="price">25</field>
41+
<field key="status">1</field>
42+
</createData>
43+
<createData entity="SimpleProduct2" stepKey="simple5">
44+
<field key="price">30</field>
45+
<field key="status">2</field>
46+
</createData>
47+
<createData entity="SimpleProduct2" stepKey="simple6">
48+
<field key="price">35</field>
49+
<field key="status">1</field>
50+
</createData>
51+
<!-- Pre Condition 3: Create fixed bundle product assigned to Category 1 -->
52+
<createData entity="FixedBundleProduct" stepKey="createBundleProduct">
53+
<requiredEntity createDataKey="createSubCategory"/>
54+
<field key="name">FixedBundle</field>
55+
<field key="price">110</field>
56+
</createData>
57+
<!--Create option 1: multi, required: false -->
58+
<createData entity="MultipleSelectOption" stepKey="createOption1">
59+
<requiredEntity createDataKey="createBundleProduct"/>
60+
<field key="required">False</field>
61+
</createData>
62+
<!-- Simple 1: Fixed price 25, qty 2 -->
63+
<createData entity="ApiBundleLink" stepKey="linkOpt1Simple1">
64+
<requiredEntity createDataKey="createBundleProduct"/>
65+
<requiredEntity createDataKey="createOption1"/>
66+
<requiredEntity createDataKey="simple1"/>
67+
<field key="price_type">0</field>
68+
<field key="price">25</field>
69+
<field key="qty">2</field>
70+
<field key="is_default">0</field>
71+
</createData>
72+
<!-- Simple 2: percent 5, qty 5 -->
73+
<createData entity="ApiBundleLink" stepKey="linkOpt1Simple2">
74+
<requiredEntity createDataKey="createBundleProduct"/>
75+
<requiredEntity createDataKey="createOption1"/>
76+
<requiredEntity createDataKey="simple2"/>
77+
<field key="price_type">1</field>
78+
<field key="price">5</field>
79+
<field key="qty">5</field>
80+
<field key="is_default">0</field>
81+
</createData>
82+
<!-- Simple 3: percent 30, qty 2 -->
83+
<createData entity="ApiBundleLink" stepKey="linkOpt1Simple3">
84+
<requiredEntity createDataKey="createBundleProduct"/>
85+
<requiredEntity createDataKey="createOption1"/>
86+
<requiredEntity createDataKey="simple3"/>
87+
<field key="price_type">1</field>
88+
<field key="price">30</field>
89+
<field key="qty">2</field>
90+
<field key="is_default">0</field>
91+
</createData>
92+
<!-- Create option 2: dropdown, required: false -->
93+
<createData entity="DropDownBundleOption" stepKey="createOption2">
94+
<requiredEntity createDataKey="createBundleProduct"/>
95+
<field key="required">False</field>
96+
</createData>
97+
<!-- Simple 4: percent 10, qty 2 -->
98+
<createData entity="ApiBundleLink" stepKey="linkOpt2Simple4">
99+
<requiredEntity createDataKey="createBundleProduct"/>
100+
<requiredEntity createDataKey="createOption2"/>
101+
<requiredEntity createDataKey="simple4"/>
102+
<field key="price_type">1</field>
103+
<field key="price">10</field>
104+
<field key="qty">2</field>
105+
<field key="is_default">0</field>
106+
</createData>
107+
<!-- Simple 5: fixed price 20, qty 5 -->
108+
<createData entity="ApiBundleLink" stepKey="linkOpt2Simple5">
109+
<requiredEntity createDataKey="createBundleProduct"/>
110+
<requiredEntity createDataKey="createOption2"/>
111+
<requiredEntity createDataKey="simple5"/>
112+
<field key="price_type">0</field>
113+
<field key="price">20</field>
114+
<field key="qty">5</field>
115+
<field key="is_default">0</field>
116+
</createData>
117+
<!-- Simple 6: percent 45, qty 1 -->
118+
<createData entity="ApiBundleLink" stepKey="linkOpt2Simple6">
119+
<requiredEntity createDataKey="createBundleProduct"/>
120+
<requiredEntity createDataKey="createOption2"/>
121+
<requiredEntity createDataKey="simple6"/>
122+
<field key="price_type">1</field>
123+
<field key="price">45</field>
124+
<field key="qty">1</field>
125+
<field key="is_default">0</field>
126+
</createData>
127+
<!-- Set special price = 70% on the bundle (fixed-price bundles interpret special_price as percent) -->
128+
<actionGroup ref="AdminLoginActionGroup" stepKey="adminLogin"/>
129+
<actionGroup ref="NavigateToCreatedProductEditPageActionGroup" stepKey="openBundleInAdmin">
130+
<argument name="product" value="$$createBundleProduct$$"/>
131+
</actionGroup>
132+
<actionGroup ref="AddSpecialPriceToProductActionGroup" stepKey="setBundleSpecialPrice">
133+
<argument name="price" value="70"/>
134+
</actionGroup>
135+
<actionGroup ref="AdminProductFormOpenAdvancedPricingDialogActionGroup" stepKey="openAdvancedPricing"/>
136+
<selectOption selector="{{AdminProductFormAdvancedPricingSection.bundleAdvancedPriceView}}" userInput="Price Range" stepKey="setPriceViewToRange"/>
137+
<actionGroup ref="AdminProductFormDoneAdvancedPricingDialogActionGroup" stepKey="closeAdvancedPricing"/>
138+
<actionGroup ref="SaveProductFormActionGroup" stepKey="saveProduct"/>
139+
</before>
140+
<after>
141+
<!-- Delete products, category and logout from admin -->
142+
<deleteData createDataKey="createBundleProduct" stepKey="delBundle"/>
143+
<deleteData createDataKey="simple1" stepKey="delSimple1"/>
144+
<deleteData createDataKey="simple2" stepKey="delSimple2"/>
145+
<deleteData createDataKey="simple3" stepKey="delSimple3"/>
146+
<deleteData createDataKey="simple4" stepKey="delSimple4"/>
147+
<deleteData createDataKey="simple5" stepKey="delSimple5"/>
148+
<deleteData createDataKey="simple6" stepKey="delSimple6"/>
149+
<deleteData createDataKey="createSubCategory" stepKey="delCategory"/>
150+
<actionGroup ref="AdminLogoutActionGroup" stepKey="adminLogout"/>
151+
</after>
152+
<!-- Step 1: go to category page on storefront -->
153+
<actionGroup ref="StorefrontNavigateCategoryPageActionGroup" stepKey="goToCategory">
154+
<argument name="category" value="$$createSubCategory$$"/>
155+
</actionGroup>
156+
<!-- Step 2: check the prices on category page -->
157+
<actionGroup ref="AssertStorefrontElementVisibleActionGroup" stepKey="seeCategoryFromPriceDiscounted">
158+
<argument name="selector" value="{{StorefrontCategoryProductSection.priceFromByProductId($$createBundleProduct.id$$)}}"/>
159+
<argument name="userInput" value="77.00"/>
160+
</actionGroup>
161+
<actionGroup ref="AssertStorefrontElementVisibleActionGroup" stepKey="seeCategoryFromPriceRegular">
162+
<argument name="selector" value="{{StorefrontCategoryProductSection.priceFromByProductId($$createBundleProduct.id$$)}}"/>
163+
<argument name="userInput" value="110.00"/>
164+
</actionGroup>
165+
<actionGroup ref="AssertStorefrontElementVisibleActionGroup" stepKey="seeCategoryToPriceDiscounted">
166+
<argument name="selector" value="{{StorefrontCategoryProductSection.priceToByProductId($$createBundleProduct.id$$)}}"/>
167+
<argument name="userInput" value="192.85"/>
168+
</actionGroup>
169+
<actionGroup ref="AssertStorefrontElementVisibleActionGroup" stepKey="seeCategoryToPriceRegular">
170+
<argument name="selector" value="{{StorefrontCategoryProductSection.priceToByProductId($$createBundleProduct.id$$)}}"/>
171+
<argument name="userInput" value="275.50"/>
172+
</actionGroup>
173+
<!-- Step 3: go to product page -->
174+
<actionGroup ref="StorefrontOpenProductPageActionGroup" stepKey="openProductPage">
175+
<argument name="productUrl" value="$$createBundleProduct.custom_attributes[url_key]$$"/>
176+
</actionGroup>
177+
<!-- Step 4: check the prices on product page -->
178+
<actionGroup ref="AssertStorefrontElementVisibleActionGroup" stepKey="seePdpFromPriceDiscounted">
179+
<argument name="selector" value="{{StorefrontProductInfoMainSection.priceFrom}}"/>
180+
<argument name="userInput" value="77.00"/>
181+
</actionGroup>
182+
<actionGroup ref="AssertStorefrontElementVisibleActionGroup" stepKey="seePdpFromPriceRegular">
183+
<argument name="selector" value="{{StorefrontProductInfoMainSection.priceFrom}}"/>
184+
<argument name="userInput" value="110.00"/>
185+
</actionGroup>
186+
<actionGroup ref="AssertStorefrontElementVisibleActionGroup" stepKey="seePdpToPriceDiscounted">
187+
<argument name="selector" value="{{StorefrontProductInfoMainSection.priceTo}}"/>
188+
<argument name="userInput" value="192.85"/>
189+
</actionGroup>
190+
<actionGroup ref="AssertStorefrontElementVisibleActionGroup" stepKey="seePdpToPriceRegular">
191+
<argument name="selector" value="{{StorefrontProductInfoMainSection.priceTo}}"/>
192+
<argument name="userInput" value="275.50"/>
193+
</actionGroup>
194+
</test>
195+
</tests>
Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
/**
4+
* Copyright 2025 Adobe
5+
* All Rights Reserved.
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="AdminVerifyDropdownAttributeLabelSelectDisplaysCorrectlyTest">
12+
<annotations>
13+
<features value="Catalog"/>
14+
<stories value="Create product Attribute"/>
15+
<title value="Dropdown attribute with label 'select' displays correctly"/>
16+
<description value="This test case verify that dropdown attribute with label 'select' displays correctly"/>
17+
<severity value="MAJOR"/>
18+
<testCaseId value="AC-4540"/>
19+
<group value="catalog"/>
20+
</annotations>
21+
<before>
22+
<!-- Pre-condition 1: Create dropdown attribute with label 'select' -->
23+
<createData entity="dropdownProductAttribute" stepKey="createDropdownAttr">
24+
<field key="default_frontend_label">'select'</field>
25+
</createData>
26+
<!-- Create dropdown options -->
27+
<createData entity="productAttributeOption1" stepKey="createProductAttributeOption1">
28+
<requiredEntity createDataKey="createDropdownAttr"/>
29+
</createData>
30+
<createData entity="productAttributeOption2" stepKey="createProductAttributeOption2">
31+
<requiredEntity createDataKey="createDropdownAttr"/>
32+
</createData>
33+
<!-- Pre-condition 2: Assign created attribute to default attribute set -->
34+
<createData entity="AddToDefaultSet" stepKey="assignToDefaultSet">
35+
<requiredEntity createDataKey="createDropdownAttr"/>
36+
</createData>
37+
<!-- Login to admin -->
38+
<actionGroup ref="AdminLoginActionGroup" stepKey="login"/>
39+
</before>
40+
<after>
41+
<!-- Delete dropdown attribute and logout from admin -->
42+
<deleteData createDataKey="createDropdownAttr" stepKey="deleteDropdownAttr"/>
43+
<actionGroup ref="AdminLogoutActionGroup" stepKey="logout"/>
44+
</after>
45+
<!-- Step 1: Open products grid page -->
46+
<actionGroup ref="AdminOpenProductIndexPageActionGroup" stepKey="openProductIndexPage"/>
47+
<!-- Step 2: Start to create simple product and verify 'select' attribute presence -->
48+
<actionGroup ref="GoToCreateProductPageActionGroup" stepKey="goToCreateSimpleProduct">
49+
<argument name="product" value="SimpleProduct"/>
50+
</actionGroup>
51+
<waitForElementVisible selector="{{AdminProductFormSection.productName}}" stepKey="assertProductFormShown"/>
52+
<waitForElementVisible selector="{{AdminProductFormSection.newAddedAttribute($$createDropdownAttr.attribute_code$$)}}" stepKey="seeSelectAttribute"/>
53+
<!-- Verify dropdown options are present on the product form -->
54+
<waitForElementClickable selector="{{AdminProductFormSection.customSelectAttribute($$createDropdownAttr.attribute_code$$)}}" stepKey="waitSelectClickable"/>
55+
<click selector="{{AdminProductFormSection.customSelectAttribute($$createDropdownAttr.attribute_code$$)}}" stepKey="openSelectDropdown"/>
56+
<waitForElementVisible selector="{{AdminProductFormSection.newAddedAttributeValue($$createProductAttributeOption1.option[store_labels][0][label]$$)}}" stepKey="seeFirstOption"/>
57+
<waitForElementVisible selector="{{AdminProductFormSection.newAddedAttributeValue($$createProductAttributeOption2.option[store_labels][0][label]$$)}}" stepKey="seeSecondOption"/>
58+
</test>
59+
</tests>

app/code/Magento/Customer/Test/Mftf/Test/AdminUpdateCustomerTest/AdminUpdateCustomerAddressNoZipNoStateTest.xml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,9 @@
3333
<remove keyForRemoval="filterByEamil"/>
3434
<remove keyForRemoval="checkCustomerInGrid"/>
3535
<remove keyForRemoval="checkCustomerAccountInformation"/>
36-
36+
<actionGroup ref="SelectCountriesWithRequiredRegionActionGroup" stepKey="setDefaultCountriesWithRequiredRegion" before="openCustomerEditPage">
37+
<argument name="countries" value="DefaultCountriesWithRequiredRegions"/>
38+
</actionGroup>
3739
<!--Update Customer Addresses With No Zip and No State -->
3840
<actionGroup stepKey="editCustomerAddress" ref="AdminEditCustomerAddressNoZipNoStateActionGroup">
3941
<argument name="customerAddress" value="addressNoZipNoState"/>

app/code/Magento/ImportExport/Test/Mftf/Section/AdminImportMainSection.xml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,5 +22,10 @@
2222
<element name="emptyAttributeValueConstant" type="input" selector="#basic_behavior_import_empty_attribute_value_constant"/>
2323
<element name="imagesFileDirectory" type="input" selector="#import_images_file_dir"/>
2424
<element name="importImagesFileDirNote" type="input" selector="#import_images_file_dir-note"/>
25+
<element name="customImportBehavior" type="select" selector="#custom_behavior"/>
26+
<element name="customValidationStrategy" type="select" selector="#custom_behaviorvalidation_strategy"/>
27+
<element name="customAllowedErrorsCount" type="input" selector="#custom_behavior_allowed_error_count"/>
28+
<element name="customFieldSeparator" type="input" selector="#custom_behavior__import_field_separator"/>
29+
<element name="customMultipleValueSeparator" type="input" selector="#custom_behavior_import_multiple_value_separator"/>
2530
</section>
2631
</sections>

0 commit comments

Comments
 (0)