Skip to content

Commit f6446c8

Browse files
shashikant.kumarshashikant.kumar
authored andcommitted
AC-4587:Create Anchor category
1 parent 1e04c7d commit f6446c8

File tree

3 files changed

+223
-1
lines changed

3 files changed

+223
-1
lines changed
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
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="StorefrontGoToSubSubCategoryPageActionGroup" extends="StorefrontGoToCategoryPageActionGroup">
12+
<arguments>
13+
<argument name="subCategoryName" type="string"/>
14+
<argument name="subSubCategoryName" type="string"/>
15+
</arguments>
16+
<moveMouseOver selector="{{StorefrontHeaderSection.NavigationCategoryByName(categoryName)}}" stepKey="toCategory"/>
17+
<waitForPageLoad stepKey="waitForSubCategoryPage"/>
18+
<moveMouseOver selector="{{StorefrontHeaderSection.NavigationCategoryByName(subCategoryName)}}" stepKey="toSubCategory" after="toCategory"/>
19+
<click selector="{{StorefrontHeaderSection.NavigationCategoryByName(subSubCategoryName)}}" stepKey="openSubSubCategory" after="toSubCategory"/>
20+
</actionGroup>
21+
</actionGroups>

app/code/Magento/Catalog/Test/Mftf/Section/AdminCategoryBasicFieldSection/AdminCategoryBasicFieldSection.xml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,9 @@
2727
<element name="urlExistsErrorMessage" type="text" selector="//div[@class='message message-error error']//h4[contains(text(),'The value specified in the URL Key field would generate a URL that already exists.')]" timeout="30"/>
2828
<element name="presenceProductsInCategory" type="text" selector="//div[@class='admin__data-grid-wrap admin__data-grid-wrap-static']//td[3]" timeout="30"/>
2929
<element name="anchorSwitch" type="input" selector="//input[@name='is_anchor']/../..//div[@class='admin__actions-switch']" timeout="30"/>
30-
30+
<element name="categoryTreeForThree" type="input" selector="//span[contains(text(),'{{var1}}')]/../../..//ul//a//span[contains(text(),'{{var2}}')]/../../..//ul//a/span[contains(text(),'{{var3}}')]" parameterized="true"/>
31+
<element name="categoryTreeForFour" type="input" selector="//span[contains(text(),'{{CatA}}') and contains(text(),'(4)') ]/../../..//ul//a//span[contains(text(),'{{CatB}}') and contains(text(),'(1)')]/../../..//ul//a/span[contains(text(),'{{CatC}}') and contains(text(),'(1)')]/../../../../../..//li[2]//a/span[contains(text(),'{{CatD}}') and contains(text(),'(1)')]" parameterized="true"/>
32+
<element name="categoryTreeForFive" type="input" selector="//span[contains(text(),'{{CatA}}') and contains(text(),'(5)') ]/../../..//ul//a//span[contains(text(),'{{CatB}}') and contains(text(),'(1)')]/../../..//ul//a/span[contains(text(),'{{CatC}}') and contains(text(),'(1)')]/../../../../../..//li[2]//a/span[contains(text(),'{{CatD}}') and contains(text(),'(2)')]/.././../..//ul//a/span[contains(text(),'{{CatE}}') and contains(text(),'(1)')]" parameterized="true"/>
3133
<element name="dragSubCategory" type="text" selector="//div[@class='x-tree-node-el folder active-category x-tree-node-leaf x-tree-selected']//a/span[contains(text(),'{{var1}}')]" parameterized="true"/>
3234
<element name="grabPopUpText" type="input" selector="//div[@class='modal-inner-wrap']//div[@data-id='information-dialog-category']//div[text()='This operation can take a long time']"/>
3335
<element name="acceptPopUp" type="input" selector="//div[@class='modal-inner-wrap']//button[@class='action-primary']/span[text()='Ok']"/>
Lines changed: 199 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,199 @@
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="CreateAnchorCategoryTest">
12+
<annotations>
13+
<stories value="Admin Can Create Category Anchor setting"/>
14+
<title value="Create Anchor category"/>
15+
<description value="Admin Can Create Category Anchor setting and it should work perfectly"/>
16+
<severity value="MAJOR"/>
17+
<testCaseId value="AC-4587"/>
18+
</annotations>
19+
<before>
20+
<createData entity="SimpleSubCategory" stepKey="createCategoryA"/>
21+
<createData entity="SubCategoryWithParent" stepKey="createCategoryB">
22+
<requiredEntity createDataKey="createCategoryA"/>
23+
</createData>
24+
<createData entity="SubCategoryWithParent" stepKey="createCategoryC">
25+
<requiredEntity createDataKey="createCategoryB"/>
26+
</createData>
27+
<createData entity="SubCategoryWithParent" stepKey="createCategoryD">
28+
<requiredEntity createDataKey="createCategoryA"/>
29+
</createData>
30+
<createData entity="SubCategoryWithParent" stepKey="createCategoryE">
31+
<requiredEntity createDataKey="createCategoryD"/>
32+
</createData>
33+
</before>
34+
<after>
35+
<deleteData createDataKey="createProductA" stepKey="deleteProductA"/>
36+
<deleteData createDataKey="createProductB" stepKey="deleteProductB"/>
37+
<deleteData createDataKey="createProductC" stepKey="deleteProductC"/>
38+
<deleteData createDataKey="createProductD" stepKey="deleteProductD"/>
39+
<deleteData createDataKey="createProductE" stepKey="deleteProductE"/>
40+
<deleteData createDataKey="createCategoryA" stepKey="deleteCategoryA"/>
41+
</after>
42+
<createData entity="_defaultProduct" stepKey="createProductA">
43+
<requiredEntity createDataKey="createCategoryA"/>
44+
<field key="name">A</field>
45+
</createData>
46+
<actionGroup ref="StorefrontGoToCategoryPageActionGroup" stepKey="openCategoryAPageFirstTime">
47+
<argument name="categoryName" value="$$createCategoryA.name$$"/>
48+
</actionGroup>
49+
<see userInput="1" selector="{{StorefrontCategoryMainSection.productCount}} span" stepKey="verifyProductCountFirstTimeInCatA"/>
50+
<actionGroup ref="AssertStorefrontProductIsPresentOnCategoryPageActionGroup" stepKey="verifyProductAOnCategoryAPageFirstTime">
51+
<argument name="productName" value="$$createProductA.name$$"/>
52+
</actionGroup>
53+
<actionGroup ref="AdminLoginActionGroup" stepKey="adminLogin"/>
54+
<actionGroup ref="AdminOpenCategoryGridPageActionGroup" stepKey="openAdminCategoryPageFirstTime"/>
55+
<actionGroup ref="ClearFiltersAdminDataGridActionGroup" stepKey="resetGridFiltersFirstTime"/>
56+
<actionGroup ref="AdminEditCategoryInGridPageActionGroup" stepKey="editCategoryItemFirstTime">
57+
<argument name="categoryName" value="$createCategoryB.name$"/>
58+
</actionGroup>
59+
<actionGroup ref="AdminToggleAnchorSwitchActionGroup" stepKey="disableAnchorSwitchForCatB"/>
60+
<createData entity="_defaultProduct" stepKey="createProductB">
61+
<requiredEntity createDataKey="createCategoryB"/>
62+
<field key="name">B</field>
63+
</createData>
64+
<actionGroup ref="StorefrontGoToSubCategoryPageActionGroup" stepKey="openCategoryBPage">
65+
<argument name="categoryName" value="$$createCategoryA.name$$"/>
66+
<argument name="subCategoryName" value="$$createCategoryB.name$$"/>
67+
</actionGroup>
68+
<see userInput="1" selector="{{StorefrontCategoryMainSection.productCount}} span" stepKey="productCountInCategoryB"/>
69+
<actionGroup ref="AssertStorefrontProductIsPresentOnCategoryPageActionGroup" stepKey="seeFirstSimpleProductNameOnCategoryPage">
70+
<argument name="productName" value="$$createProductB.name$$"/>
71+
</actionGroup>
72+
<actionGroup ref="StorefrontGoToCategoryPageActionGroup" stepKey="openCategoryAPageSecondTime">
73+
<argument name="categoryName" value="$$createCategoryA.name$$"/>
74+
</actionGroup>
75+
<see userInput="2" selector="{{StorefrontCategoryMainSection.productCount}} span" stepKey="verifyProductCountSecondTimeInCatA"/>
76+
<actionGroup ref="AssertStorefrontProductIsPresentOnCategoryPageActionGroup" stepKey="verifyProductAOnCategoryAPageSecondTime">
77+
<argument name="productName" value="$$createProductA.name$$"/>
78+
</actionGroup>
79+
<actionGroup ref="AssertStorefrontProductIsPresentOnCategoryPageActionGroup" stepKey="verifyProductBOnCategoryAPageFirstTime">
80+
<argument name="productName" value="$$createProductB.name$$"/>
81+
</actionGroup>
82+
<actionGroup ref="AdminOpenCategoryGridPageActionGroup" stepKey="openAdminCategoryPageSecondTime"/>
83+
<actionGroup ref="ClearFiltersAdminDataGridActionGroup" stepKey="resetGridFiltersSecondTime"/>
84+
<actionGroup ref="AdminEditCategoryInGridPageActionGroup" stepKey="editCategoryC">
85+
<argument name="categoryName" value="$createCategoryC.name$"/>
86+
</actionGroup>
87+
<actionGroup ref="AdminToggleAnchorSwitchActionGroup" stepKey="disableAnchorSwitchForCatC"/>
88+
<createData entity="_defaultProduct" stepKey="createProductC">
89+
<requiredEntity createDataKey="createCategoryC"/>
90+
<field key="name">C</field>
91+
</createData>
92+
<seeElement selector="{{AdminCategoryBasicFieldSection.categoryTreeForThree($createCategoryA.name$,$createCategoryB.name$,$createCategoryC.name$)}}" stepKey="verifyThreeLayerCategoryTree"/>
93+
<actionGroup ref="StorefrontGoToCategoryPageActionGroup" stepKey="openCategoryAPageThirdTime">
94+
<argument name="categoryName" value="$$createCategoryA.name$$"/>
95+
</actionGroup>
96+
<see userInput="3" selector="{{StorefrontCategoryMainSection.productCount}} span" stepKey="verifyProductCountThirdTimeInCatA"/>
97+
<actionGroup ref="AssertStorefrontProductIsPresentOnCategoryPageActionGroup" stepKey="verifyProductAOnCategoryAPageThirdTime">
98+
<argument name="productName" value="$$createProductA.name$$"/>
99+
</actionGroup>
100+
<actionGroup ref="AssertStorefrontProductIsPresentOnCategoryPageActionGroup" stepKey="verifyProductBOnCategoryAPageSecondTime">
101+
<argument name="productName" value="$$createProductB.name$$"/>
102+
</actionGroup>
103+
<actionGroup ref="AssertStorefrontProductIsPresentOnCategoryPageActionGroup" stepKey="verifyProductCOnCategoryAPageFirstTime">
104+
<argument name="productName" value="$$createProductC.name$$"/>
105+
</actionGroup>
106+
<actionGroup ref="StorefrontGoToSubCategoryPageActionGroup" stepKey="openCategoryBPageSecondTime">
107+
<argument name="categoryName" value="$$createCategoryA.name$$"/>
108+
<argument name="subCategoryName" value="$$createCategoryB.name$$"/>
109+
</actionGroup>
110+
<see userInput="1" selector="{{StorefrontCategoryMainSection.productCount}} span" stepKey="verifyProductCountInCatB"/>
111+
<actionGroup ref="AssertStorefrontProductIsPresentOnCategoryPageActionGroup" stepKey="verifyProductBOnCategoryBPage">
112+
<argument name="productName" value="$$createProductB.name$$"/>
113+
</actionGroup>
114+
<actionGroup ref="StorefrontGoToSubSubCategoryPageActionGroup" stepKey="openCategoryCPage">
115+
<argument name="categoryName" value="$$createCategoryA.name$$"/>
116+
<argument name="subCategoryName" value="$$createCategoryB.name$$"/>
117+
<argument name="subSubCategoryName" value="$$createCategoryC.name$$"/>
118+
</actionGroup>
119+
<see userInput="1" selector="{{StorefrontCategoryMainSection.productCount}} span" stepKey="verifyProductCountInCatC"/>
120+
<actionGroup ref="AssertStorefrontProductIsPresentOnCategoryPageActionGroup" stepKey="verifyProductCOnCategoryCPage">
121+
<argument name="productName" value="$$createProductC.name$$"/>
122+
</actionGroup>
123+
<actionGroup ref="AdminOpenCategoryGridPageActionGroup" stepKey="openAdminCategoryThirdTime"/>
124+
<actionGroup ref="ClearFiltersAdminDataGridActionGroup" stepKey="resetGridFiltersThirdTime"/>
125+
<actionGroup ref="AdminEditCategoryInGridPageActionGroup" stepKey="editCategoryD">
126+
<argument name="categoryName" value="$createCategoryD.name$"/>
127+
</actionGroup>
128+
<createData entity="_defaultProduct" stepKey="createProductD">
129+
<requiredEntity createDataKey="createCategoryD"/>
130+
<field key="name">D</field>
131+
</createData>
132+
<reloadPage stepKey="refreshEditCategoryDPage" />
133+
<actionGroup ref="AdminExpandCategoryTreeActionGroup" stepKey="clickExpandAll"/>
134+
<wait time="15" stepKey="waitForExpandAllFourCategoryTree" />
135+
<seeElement selector="{{AdminCategoryBasicFieldSection.categoryTreeForFour($createCategoryA.name$,$createCategoryB.name$,$createCategoryC.name$,$createCategoryD.name$)}}" stepKey="verifyFourLayerCategoryTreeWithProductQty"/>
136+
<actionGroup ref="StorefrontGoToCategoryPageActionGroup" stepKey="openCategoryAPageFourthTime">
137+
<argument name="categoryName" value="$$createCategoryA.name$$"/>
138+
</actionGroup>
139+
<see userInput="4" selector="{{StorefrontCategoryMainSection.productCount}} span" stepKey="verifyProductCountFourthTimeInCatA"/>
140+
<actionGroup ref="AssertStorefrontProductIsPresentOnCategoryPageActionGroup" stepKey="verifyProductAOnCategoryAPageFourthTime">
141+
<argument name="productName" value="$$createProductA.name$$"/>
142+
</actionGroup>
143+
<actionGroup ref="AssertStorefrontProductIsPresentOnCategoryPageActionGroup" stepKey="verifyProductBOnCategoryAPageThirdTime">
144+
<argument name="productName" value="$$createProductB.name$$"/>
145+
</actionGroup>
146+
<actionGroup ref="AssertStorefrontProductIsPresentOnCategoryPageActionGroup" stepKey="verifyProductCOnCategoryAPageSecondTime">
147+
<argument name="productName" value="$$createProductC.name$$"/>
148+
</actionGroup>
149+
<actionGroup ref="AssertStorefrontProductIsPresentOnCategoryPageActionGroup" stepKey="verifyProductDOnCategoryAPageFirstTime">
150+
<argument name="productName" value="$$createProductD.name$$"/>
151+
</actionGroup>
152+
<actionGroup ref="AdminOpenCategoryGridPageActionGroup" stepKey="openAdminCategoryPageFourthTime"/>
153+
<actionGroup ref="ClearFiltersAdminDataGridActionGroup" stepKey="resetGridFiltersFourthTime"/>
154+
<actionGroup ref="AdminEditCategoryInGridPageActionGroup" stepKey="editCategoryE">
155+
<argument name="categoryName" value="$createCategoryE.name$"/>
156+
</actionGroup>
157+
<actionGroup ref="AdminToggleAnchorSwitchActionGroup" stepKey="disableAnchorSwitchForCatE"/>
158+
<createData entity="_defaultProduct" stepKey="createProductE">
159+
<requiredEntity createDataKey="createCategoryE"/>
160+
<field key="name">E</field>
161+
</createData>
162+
<reloadPage stepKey="refreshCategoryEPage" />
163+
<actionGroup ref="AdminExpandCategoryTreeActionGroup" stepKey="expandAllFiveCategoryTree"/>
164+
<wait time="15" stepKey="waitForExpandAllFiveCategoryTree" />
165+
<seeElement selector="{{AdminCategoryBasicFieldSection.categoryTreeForFive($createCategoryA.name$,$createCategoryB.name$,$createCategoryC.name$,$createCategoryD.name$,$createCategoryE.name$)}}" stepKey="verifyFiveLayerCategoryTreeWithProductQty"/>
166+
<actionGroup ref="StorefrontGoToCategoryPageActionGroup" stepKey="openCategoryAPageFifthTime">
167+
<argument name="categoryName" value="$$createCategoryA.name$$"/>
168+
</actionGroup>
169+
<see userInput="5" selector="{{StorefrontCategoryMainSection.productCount}} span" stepKey="verifyProductCountFifthTimeInCatA"/>
170+
<actionGroup ref="AssertStorefrontProductIsPresentOnCategoryPageActionGroup" stepKey="verifyProductAOnCategoryAPageFifthTime">
171+
<argument name="productName" value="$$createProductA.name$$"/>
172+
</actionGroup>
173+
<actionGroup ref="AssertStorefrontProductIsPresentOnCategoryPageActionGroup" stepKey="verifyProductBOnCategoryAPageFourthTime">
174+
<argument name="productName" value="$$createProductB.name$$"/>
175+
</actionGroup>
176+
<actionGroup ref="AssertStorefrontProductIsPresentOnCategoryPageActionGroup" stepKey="verifyProductCOnCategoryAPageThirdTime">
177+
<argument name="productName" value="$$createProductC.name$$"/>
178+
</actionGroup>
179+
<actionGroup ref="AssertStorefrontProductIsPresentOnCategoryPageActionGroup" stepKey="verifyProductDOnCategoryAPageSecondTime">
180+
<argument name="productName" value="$$createProductD.name$$"/>
181+
</actionGroup>
182+
<actionGroup ref="AssertStorefrontProductIsPresentOnCategoryPageActionGroup" stepKey="verifyProductEOnCategoryAPageFirstTime">
183+
<argument name="productName" value="$$createProductE.name$$"/>
184+
</actionGroup>
185+
<actionGroup ref="StorefrontGoToSubCategoryPageActionGroup" stepKey="openCategoryDPage">
186+
<argument name="categoryName" value="$$createCategoryA.name$$"/>
187+
<argument name="subCategoryName" value="$$createCategoryD.name$$"/>
188+
</actionGroup>
189+
<see userInput="2" selector="{{StorefrontCategoryMainSection.productCount}} span" stepKey="verifyProductCountFirstTimeInCatD"/>
190+
<actionGroup ref="AssertStorefrontProductIsPresentOnCategoryPageActionGroup" stepKey="verifyProductDOnCategoryDPageFirstTime">
191+
<argument name="productName" value="$$createProductD.name$$"/>
192+
</actionGroup>
193+
<actionGroup ref="AssertStorefrontProductIsPresentOnCategoryPageActionGroup" stepKey="verifyProductEOnCategoryDPageFirstTime">
194+
<argument name="productName" value="$$createProductE.name$$"/>
195+
</actionGroup>
196+
</test>
197+
</tests>
198+
199+

0 commit comments

Comments
 (0)