Skip to content

Commit d586f10

Browse files
author
Stas Puga
committed
MAGETWO-95171: Filtering Category Products using scope selector
1 parent 9c4e95d commit d586f10

File tree

3 files changed

+155
-5
lines changed

3 files changed

+155
-5
lines changed

app/code/Magento/Catalog/Test/Mftf/ActionGroup/AdminProductActionGroup.xml

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -257,11 +257,10 @@
257257
<arguments>
258258
<argument name="website" type="string"/>
259259
</arguments>
260-
<scrollTo selector="{{CreateProductSection.productInWebsite}}" stepKey="ScrollToWebsites"/>
261-
<click selector="{{CreateProductSection.productInWebsite}}" stepKey="ClickTpOpenProductInWebsite"/>
260+
<scrollTo selector="{{ProductInWebsitesSection.sectionHeader}}" stepKey="ScrollToWebsites"/>
261+
<click selector="{{ProductInWebsitesSection.sectionHeader}}" stepKey="ClickTpOpenProductInWebsite"/>
262262
<waitForPageLoad stepKey="waitForPageOpened"/>
263-
<click selector="{{CreateProductSection.isSelected(website)}}" stepKey="SelectWebsite"/>
264-
<click selector="{{CreateProductSection.saveButton}}" stepKey="clickSaveProduct"/>
263+
<checkOption selector="{{ProductInWebsitesSection.website(website)}}" stepKey="SelectWebsite"/>
265264
</actionGroup>
266265

267266
<!--Switch to New Store view-->

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

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,5 +14,6 @@
1414
<element name="rowProductSku" type="text" selector="#catalog_category_products_table tbody tr:nth-of-type({{row}}) .col-sku" parameterized="true"/>
1515
<element name="rowPrice" type="text" selector="#catalog_category_products_table tbody tr:nth-of-type({{row}}) .col-price" parameterized="true"/>
1616
<element name="rowPosition" type="input" selector="#catalog_category_products_table tbody tr:nth-of-type({{row}}) .col-position .position input" timeout="30" parameterized="true"/>
17+
<element name="productGridNameProduct" type="text" selector="//table[@id='catalog_category_products_table']//td[contains(., '{{productName}}')]" parameterized="true"/>
1718
</section>
18-
</sections>
19+
</sections>
Lines changed: 150 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,150 @@
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="AdminFilteringCategoryProductsUsingScopeSelectorTest">
12+
<annotations>
13+
<features value="Catalog"/>
14+
<group value="Catalog"/>
15+
<title value="Filtering Category Products using scope selector"/>
16+
<description value="Filtering Category Products using scope selector"/>
17+
<severity value="MAJOR"/>
18+
<testCaseId value="MAGETWO-48850"/>
19+
<group value="catalog"/>
20+
</annotations>
21+
<before>
22+
<actionGroup ref="LoginAsAdmin" stepKey="loginAsAdmin"/>
23+
<!--Create website, Sore adn Store View-->
24+
<actionGroup ref="AdminCreateWebsiteActionGroup" stepKey="AdminCreateWebsite">
25+
<argument name="newWebsiteName" value="secondWebsite"/>
26+
<argument name="websiteCode" value="second_website"/>
27+
</actionGroup>
28+
<actionGroup ref="AdminCreateNewStoreGroupActionGroup" stepKey="AdminCreateStore">
29+
<argument name="website" value="secondWebsite"/>
30+
<argument name="storeGroupName" value="secondStore"/>
31+
<argument name="storeGroupCode" value="second_store"/>
32+
</actionGroup>
33+
<actionGroup ref="AdminCreateStoreViewActionGroup" stepKey="AdminCreateStoreView">
34+
<argument name="StoreGroup" value="customStoreTierPrice"/>
35+
<argument name="customStore" value="customStoreView"/>
36+
</actionGroup>
37+
38+
<!--Create Simple Product and Category -->
39+
<createData entity="_defaultCategory" stepKey="createCategory"/>
40+
<createData entity="_defaultProduct" stepKey="createProduct0">
41+
<requiredEntity createDataKey="createCategory"/>
42+
</createData>
43+
<createData entity="_defaultProduct" stepKey="createProduct1">
44+
<requiredEntity createDataKey="createCategory"/>
45+
</createData>
46+
<createData entity="_defaultProduct" stepKey="createProduct2">
47+
<requiredEntity createDataKey="createCategory"/>
48+
</createData>
49+
<createData entity="_defaultProduct" stepKey="createProduct12">
50+
<requiredEntity createDataKey="createCategory"/>
51+
</createData>
52+
53+
<!-- Set filter to product name and product0 not assigned to any website-->
54+
<actionGroup ref="SearchForProductOnBackendActionGroup" stepKey="filterGroupedProductOptions">
55+
<argument name="product" value="_defaultProduct"/>
56+
</actionGroup>
57+
58+
<click selector="{{AdminProductGridSection.productGridNameProduct('$$createProduct0.name$$')}}"
59+
stepKey="clickOpenProductForEdit"/>
60+
<waitForPageLoad time="30" stepKey="waitForProductEditOpen"/>
61+
62+
<scrollTo selector="{{ProductInWebsitesSection.sectionHeader}}" stepKey="scrollToWebsitesSection"/>
63+
<click selector="{{ProductInWebsitesSection.sectionHeader}}" stepKey="clickToOpenWebsiteSection"/>
64+
<waitForPageLoad stepKey="waitForToOpenedWebsiteSection"/>
65+
<uncheckOption selector="{{ProductInWebsitesSection.website('Main Website')}}" stepKey="uncheckWebsite"/>
66+
<click selector="{{AdminProductFormActionSection.saveButton}}" stepKey="clickSaveProduct"/>
67+
68+
<!-- Set filter to product name and product2 in website 2 only -->
69+
<amOnPage url="{{AdminProductIndexPage.url}}" stepKey="navigateToProductIndex"/>
70+
<waitForPageLoad time="30" stepKey="waitForProductsPageToLoad"/>
71+
<click selector="{{AdminProductGridSection.productGridNameProduct('$$createProduct2.name$$')}}"
72+
stepKey="clickOpenProductForEdit1"/>
73+
<waitForPageLoad time="30" stepKey="waitForProductEditOpen1"/>
74+
75+
<actionGroup ref="SelectProductInWebsitesActionGroup" stepKey="selectProductInWebsites">
76+
<argument name="website" value="secondWebsite"/>
77+
</actionGroup>
78+
<uncheckOption selector="{{ProductInWebsitesSection.website('Main Website')}}" stepKey="uncheckWebsite1"/>
79+
<click selector="{{AdminProductFormActionSection.saveButton}}" stepKey="clickSaveProduct1"/>
80+
81+
<!-- Set filter to product name and product12 assigned to both websites 1 and 2 -->
82+
<amOnPage url="{{AdminProductIndexPage.url}}" stepKey="navigateToProductIndex1"/>
83+
<waitForPageLoad time="30" stepKey="waitForProductsPageToLoad1"/>
84+
<click selector="{{AdminProductGridSection.productGridNameProduct('$$createProduct12.name$$')}}"
85+
stepKey="clickOpenProductForEdit2"/>
86+
<waitForPageLoad time="30" stepKey="waitForProductEditOpen2"/>
87+
88+
<actionGroup ref="SelectProductInWebsitesActionGroup" stepKey="selectProductInWebsites1">
89+
<argument name="website" value="secondWebsite"/>
90+
</actionGroup>
91+
<click selector="{{AdminProductFormActionSection.saveButton}}" stepKey="clickSaveProduct2"/>
92+
</before>
93+
<after>
94+
<actionGroup ref="AdminDeleteWebsiteActionGroup" stepKey="deleteWebsite">
95+
<argument name="websiteName" value="secondWebsite"/>
96+
</actionGroup>
97+
<deleteData createDataKey="createProduct0" stepKey="deleteProduct"/>
98+
<deleteData createDataKey="createProduct1" stepKey="deleteProduct1"/>
99+
<deleteData createDataKey="createProduct2" stepKey="deleteProduct2"/>
100+
<deleteData createDataKey="createProduct12" stepKey="deleteProduct3"/>
101+
<deleteData createDataKey="createCategory" stepKey="deleteCategory"/>
102+
<actionGroup ref="logout" stepKey="logout"/>
103+
</after>
104+
<!-- Step 1-2: Open Category page and Set scope selector to All Store Views-->
105+
<amOnPage url="{{AdminCategoryPage.url}}" stepKey="goToCategoryPage"/>
106+
<waitForPageLoad stepKey="waitForCategoryPageLoad"/>
107+
<click selector="{{AdminCategorySidebarTreeSection.categoryInTree($$createCategory.name$$)}}"
108+
stepKey="clickCategoryName"/>
109+
<click selector="{{AdminCategoryProductsSection.sectionHeader}}" stepKey="openProductSection"/>
110+
<see selector="{{AdminCategoryProductsGridSection.productGridNameProduct($$createProduct0.name$$)}}"
111+
userInput="$$createProduct0.name$$" stepKey="seeProductName"/>
112+
<see selector="{{AdminCategoryProductsGridSection.productGridNameProduct($$createProduct1.name$$)}}"
113+
userInput="$$createProduct1.name$$" stepKey="seeProductName1"/>
114+
<see selector="{{AdminCategoryProductsGridSection.productGridNameProduct($$createProduct2.name$$)}}"
115+
userInput="$$createProduct2.name$$" stepKey="seeProductName2"/>
116+
<see selector="{{AdminCategoryProductsGridSection.productGridNameProduct($$createProduct12.name$$)}}"
117+
userInput="$$createProduct12.name$$" stepKey="seeProductName3"/>
118+
119+
<!-- Step 3: Set scope selector to Website1( Storeview for the Website 1) -->
120+
<scrollToTopOfPage stepKey="scrollToTopOfPage"/>
121+
<click selector="{{AdminCategoryMainActionsSection.CategoryStoreViewDropdownToggle}}"
122+
stepKey="clickStoresList"/>
123+
<waitForPageLoad stepKey="waitForCategoryPageLoad1"/>
124+
<click selector="{{AdminCategoryMainActionsSection.CategoryStoreViewOption('Default Store View')}}"
125+
stepKey="clickStoreView"/>
126+
<click selector="{{AdminCategoryMainActionsSection.CategoryStoreViewModalAccept}}" stepKey="clickActionAccept"/>
127+
<waitForPageLoad stepKey="waitForCategoryPageLoad2"/>
128+
<click selector="{{AdminCategoryProductsSection.sectionHeader}}" stepKey="openProductSection1"/>
129+
<see selector="{{AdminCategoryProductsGridSection.productGridNameProduct($$createProduct1.name$$)}}"
130+
userInput="$$createProduct1.name$$" stepKey="seeProductName4"/>
131+
<see selector="{{AdminCategoryProductsGridSection.productGridNameProduct($$createProduct12.name$$)}}"
132+
userInput="$$createProduct12.name$$" stepKey="seeProductName5"/>
133+
134+
<!-- Step 4: Set scope selector to Website2 ( StopreView for Website 2) -->
135+
<scrollToTopOfPage stepKey="scrollToTopOfPage1"/>
136+
<click selector="{{AdminCategoryMainActionsSection.CategoryStoreViewDropdownToggle}}"
137+
stepKey="clickStoresList1"/>
138+
<waitForPageLoad stepKey="waitForCategoryPageLoad3"/>
139+
<click selector="{{AdminCategoryMainActionsSection.CategoryStoreViewOption('secondStoreView')}}"
140+
stepKey="clickStoreView1"/>
141+
<click selector="{{AdminCategoryMainActionsSection.CategoryStoreViewModalAccept}}"
142+
stepKey="clickActionAccept1"/>
143+
<waitForPageLoad stepKey="waitForCategoryPageLoad4"/>
144+
<click selector="{{AdminCategoryProductsSection.sectionHeader}}" stepKey="openProductSection2"/>
145+
<see selector="{{AdminCategoryProductsGridSection.productGridNameProduct($$createProduct2.name$$)}}"
146+
userInput="$$createProduct2.name$$" stepKey="seeProductName6"/>
147+
<see selector="{{AdminCategoryProductsGridSection.productGridNameProduct($$createProduct12.name$$)}}"
148+
userInput="$$createProduct12.name$$" stepKey="seeProductName7"/>
149+
</test>
150+
</tests>

0 commit comments

Comments
 (0)