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 =" ../../../../../../vendor/magento/magento2-functional-testing-framework/src/Magento/FunctionalTestingFramework/Test/etc/testSchema.xsd" >
11
+ <test name =" DeleteCategoriesTest" >
12
+ <annotations >
13
+ <features value =" Delete categories" />
14
+ <title value =" Delete categories." />
15
+ <description value =" Delete Default Root Category and subcategories and vefify after products on storefront." />
16
+ <severity value =" CRITICAL" />
17
+ <testCaseId value =" MAGETWO-46344" />
18
+ <group value =" testNotIsolated" />
19
+ </annotations >
20
+ <before >
21
+ <createData entity =" _defaultCategory" stepKey =" createCategoryC" />
22
+ <createData entity =" productWithDescription" stepKey =" createProduct1" >
23
+ <requiredEntity createDataKey =" createCategoryC" />
24
+ </createData >
25
+ <createData entity =" SubCategoryWithParent" stepKey =" createSubCategory" >
26
+ <requiredEntity createDataKey =" createCategoryC" />
27
+ </createData >
28
+ <createData entity =" productWithDescription" stepKey =" createProduct2" >
29
+ <requiredEntity createDataKey =" createSubCategory" />
30
+ </createData >
31
+ <createData entity =" _defaultCategory" stepKey =" createCategoryB" />
32
+ <createData entity =" productWithDescription" stepKey =" createProduct3" >
33
+ <requiredEntity createDataKey =" createCategoryB" />
34
+ </createData >
35
+ <createData entity =" NewRootCategory" stepKey =" createNewRootCategoryA" />
36
+ </before >
37
+ <after >
38
+ <amOnPage url =" admin/admin/auth/logout/" stepKey =" amOnLogoutPage" />
39
+ <deleteData createDataKey =" createProduct1" stepKey =" deleteProduct1" />
40
+ <deleteData createDataKey =" createProduct2" stepKey =" deleteProduct2" />
41
+ <deleteData createDataKey =" createProduct3" stepKey =" deleteProduct3" />
42
+ </after >
43
+ <actionGroup ref =" LoginAsAdmin" stepKey =" loginAsAdmin1" />
44
+ <amOnPage url =" {{AdminCategoryPage.url}}" stepKey =" navigateToCategoryPage1" />
45
+ <waitForPageLoad time =" 30" stepKey =" waitForPageCategoryLoadAfterNavigate" />
46
+ <click selector =" {{AdminCategorySidebarTreeSection.categoryInTree($$createNewRootCategoryA.name$$)}}" stepKey =" openNewRootCategory" />
47
+ <waitForPageLoad stepKey =" waitForPageCategoryLoadAfterClickOnNewRootCategory" />
48
+ <seeElement selector =" {{AdminCategoryMainActionsSection.DeleteButton}}" stepKey =" assertDeleteButtonIsPresent" />
49
+ <!-- Move categories from Default Category to NewRootCategory. -->
50
+ <actionGroup ref =" MoveCategoryActionGroup" stepKey =" MoveCategoryBToNewRootCategory" >
51
+ <argument name =" childCategory" value =" $$createCategoryC.name$$" />
52
+ <argument name =" parentCategory" value =" $$createNewRootCategoryA.name$$" />
53
+ </actionGroup >
54
+ <actionGroup ref =" MoveCategoryActionGroup" stepKey =" MoveCategoryCToNewRootCategory" >
55
+ <argument name =" childCategory" value =" $$createCategoryB.name$$" />
56
+ <argument name =" parentCategory" value =" $$createNewRootCategoryA.name$$" />
57
+ </actionGroup >
58
+ <!-- Change root category for Main Website Store. -->
59
+ <amOnPage stepKey =" s1" url =" {{AdminSystemStorePage.url}}" />
60
+ <waitForPageLoad stepKey =" waitForPageAdminSystemStoreLoad" />
61
+ <click stepKey =" s2" selector =" {{AdminStoresGridSection.resetButton}}" />
62
+ <waitForPageLoad stepKey =" waitForPageAdminStoresGridLoadAfterResetButton" time =" 10" />
63
+ <fillField stepKey =" s4" selector =" {{AdminStoresGridSection.storeGrpFilterTextField}}" userInput =" Main Website Store" />
64
+ <click stepKey =" s5" selector =" {{AdminStoresGridSection.searchButton}}" />
65
+ <waitForPageLoad stepKey =" waitForPageAdminStoresGridLoadAfterSearchButton" />
66
+ <click stepKey =" s7" selector =" {{AdminStoresGridSection.storeGrpNameInFirstRow}}" />
67
+ <waitForPageLoad stepKey =" waitForPageAdminStoresGroupEditLoad" />
68
+ <selectOption selector =" {{AdminNewStoreGroupSection.storeRootCategoryDropdown}}" userInput =" {{NewRootCategory.name}}" stepKey =" setNewCategoryForStoreGroup" />
69
+ <click selector =" {{AdminNewStoreViewActionsSection.saveButton}}" stepKey =" clickSaveStoreGroup" />
70
+ <waitForElementVisible selector =" {{AdminConfirmationModalSection.ok}}" stepKey =" waitForModalSaveStoreGroup" />
71
+ <see selector =" {{AdminConfirmationModalSection.title}}" userInput =" Warning message" stepKey =" seeWarning" />
72
+ <click selector =" {{AdminConfirmationModalSection.ok}}" stepKey =" acceptModal" />
73
+ <waitForElementVisible selector =" {{AdminStoresGridSection.storeFilterTextField}}" stepKey =" waitForPageAdminStoresGridReload" />
74
+ <see userInput =" You saved the store." stepKey =" seeSavedMessage" />
75
+
76
+ <!-- @TODO: Uncomment commented below code after MQE-903 is fixed -->
77
+ <!-- Perform cli reindex. -->
78
+ <!-- <magentoCLI command="indexer:reindex" stepKey="magentoCli"/>-->
79
+
80
+ <!-- Delete Default Root Category. -->
81
+ <amOnPage url =" {{AdminCategoryPage.url}}" stepKey =" navigateToCategoryPageAfterCLIReindexCommand" />
82
+ <waitForPageLoad time =" 30" stepKey =" waitForPageCategoryLoadAfterCLIReindexCommand" />
83
+ <click selector =" {{AdminCategorySidebarTreeSection.categoryInTree('Default Category')}}" stepKey =" clickOnDefaultRootCategory" />
84
+ <waitForPageLoad stepKey =" waitForPageDefaultCategoryEditLoad" />
85
+ <seeElement selector =" {{AdminCategoryMainActionsSection.DeleteButton}}" stepKey =" assertDeleteButtonIsPresent1" />
86
+ <click selector =" {{AdminCategoryMainActionsSection.DeleteButton}}" stepKey =" DeleteDefaultRootCategory" />
87
+ <waitForElementVisible selector =" {{AdminCategoryModalSection.ok}}" stepKey =" waitForModalDeleteDefaultRootCategory" />
88
+ <click selector =" {{AdminCategoryModalSection.ok}}" stepKey =" acceptModal1" />
89
+ <waitForElementVisible selector =" {{AdminCategoryMessagesSection.SuccessMessage}}" stepKey =" waitForPageReloadAfterDeleteDefaultCategory" />
90
+ <!-- Verify categories 1 and 3 their products. -->
91
+ <amOnPage url =" {{StorefrontHomePage.url}}" stepKey =" amOnHomePage" />
92
+ <waitForPageLoad stepKey =" homeWaitForPageLoad" />
93
+
94
+ <!-- @TODO: Uncomment commented below code after MQE-903 is fixed -->
95
+ <!-- <click selector="{{StorefrontHeaderSection.NavigationCategoryByName($$createCategoryC.name$$)}}" stepKey="browseClickCategoryC"/>-->
96
+ <!-- <actionGroup ref="StorefrontCheckCategoryActionGroup" stepKey="browseAssertCategoryC">-->
97
+ <!-- <argument name="category" value="$$createCategoryC$$"/>-->
98
+ <!-- <argument name="productCount" value="2"/>-->
99
+ <!-- </actionGroup>-->
100
+ <!-- <actionGroup ref="StorefrontCheckCategorySimpleProduct" stepKey="browseAssertCategoryProduct1">-->
101
+ <!-- <argument name="product" value="$$createProduct1$$"/>-->
102
+ <!-- </actionGroup>-->
103
+
104
+ <moveMouseOver selector =" {{StorefrontHeaderSection.NavigationCategoryByName($$createCategoryC.name$$)}}" stepKey =" hoverCategory" />
105
+ <waitForElementVisible selector =" {{StorefrontHeaderSection.NavigationCategoryByName($$createSubCategory.name$$)}}" stepKey =" waitForSubcategory" />
106
+ <click selector =" {{StorefrontHeaderSection.NavigationCategoryByName($$createSubCategory.name$$)}}" stepKey =" browseClickSubCategory" />
107
+ <actionGroup ref =" StorefrontCheckCategoryActionGroup" stepKey =" browseAssertSubcategory" >
108
+ <argument name =" category" value =" $$createSubCategory$$" />
109
+ <argument name =" productCount" value =" 1" />
110
+ </actionGroup >
111
+ <actionGroup ref =" StorefrontCheckCategorySimpleProduct" stepKey =" browseAssertCategoryProduct2" >
112
+ <argument name =" product" value =" $$createProduct2$$" />
113
+ </actionGroup >
114
+
115
+ <!-- @TODO: Uncomment commented below code after MQE-903 is fixed -->
116
+ <!-- <actionGroup ref="StorefrontCheckCategoryActionGroup" stepKey="browseAssertCategoryB">-->
117
+ <!-- <argument name="category" value="$$createCategoryB$$"/>-->
118
+ <!-- <argument name="productCount" value="1"/>-->
119
+ <!-- </actionGroup>-->
120
+ <!-- <actionGroup ref="StorefrontCheckCategorySimpleProduct" stepKey="browseAssertCategoryProduct3">-->
121
+ <!-- <argument name="product" value="$$createProduct3$$"/>-->
122
+ <!-- </actionGroup>-->
123
+
124
+ <!-- Delete Categories 1(with subcategory) and 3. -->
125
+ <amOnPage url =" {{AdminCategoryPage.url}}" stepKey =" navigateToCategoryPageAfterStoreFrontCategoryAssertions" />
126
+ <waitForPageLoad time =" 30" stepKey =" waitForCategoryPageLoadAfterStoreFrontCategoryAssertions" />
127
+ <actionGroup ref =" DeleteCategory" stepKey =" deleteCategoryC" >
128
+ <argument name =" categoryEntity" value =" $$createCategoryC$$" />
129
+ </actionGroup >
130
+ <actionGroup ref =" DeleteCategory" stepKey =" deleteCategoryB" >
131
+ <argument name =" categoryEntity" value =" $$createCategoryB$$" />
132
+ </actionGroup >
133
+ <!-- Verify categories 1 and 3 are absent -->
134
+ <amOnPage url =" {{StorefrontHomePage.url}}" stepKey =" amOnHomePage1" />
135
+ <waitForPageLoad stepKey =" waitHomePageLoadAfterDeletingCategories" />
136
+ <dontSee selector =" {{StorefrontHeaderSection.NavigationCategoryByName($$createCategoryB.name$$)}}" stepKey =" browseClickCategoryB" />
137
+ <dontSee selector =" {{StorefrontHeaderSection.NavigationCategoryByName($$createCategoryC.name$$)}}" stepKey =" browseClickCategoryC" />
138
+ <!-- Verify products 1-3 are available on storefront -->
139
+ <amOnPage url =" {{StorefrontHomePage.url}}$$createProduct1.custom_attributes[url_key]$$.html" stepKey =" amOnProduct1Page" />
140
+ <waitForPageLoad stepKey =" product1WaitForPageLoad" />
141
+ <actionGroup ref =" StorefrontCheckSimpleProduct" stepKey =" browseAssertProduct1Page" >
142
+ <argument name =" product" value =" $$createProduct1$$" />
143
+ </actionGroup >
144
+ <amOnPage url =" {{StorefrontHomePage.url}}$$createProduct2.custom_attributes[url_key]$$.html" stepKey =" amOnProduct2Page" />
145
+ <waitForPageLoad stepKey =" product2WaitForPageLoad" />
146
+ <actionGroup ref =" StorefrontCheckSimpleProduct" stepKey =" browseAssertProduct2Page" >
147
+ <argument name =" product" value =" $$createProduct2$$" />
148
+ </actionGroup >
149
+ <amOnPage url =" {{StorefrontHomePage.url}}$$createProduct3.custom_attributes[url_key]$$.html" stepKey =" amOnProduct3Page" />
150
+ <waitForPageLoad stepKey =" product3WaitForPageLoad" />
151
+ <actionGroup ref =" StorefrontCheckSimpleProduct" stepKey =" browseAssertProduct3Page" >
152
+ <argument name =" product" value =" $$createProduct3$$" />
153
+ </actionGroup >
154
+ <!-- Rename New Root Category to Default category -->
155
+ <amOnPage url =" {{AdminCategoryPage.url}}" stepKey =" navigateToCategoryPageAfterStoreFrontProductsAssertions" />
156
+ <waitForPageLoad time =" 30" stepKey =" waitForCategoryPageLoadAfterStoreFrontProductsAssertions" />
157
+ <click selector =" {{AdminCategorySidebarTreeSection.categoryInTree('$$createNewRootCategoryA.name$$')}}" stepKey =" clickOnNewRootCategoryA" />
158
+ <waitForPageLoad stepKey =" waitForPageNewRootCategoryALoad" />
159
+ <fillField selector =" {{AdminCategoryBasicFieldSection.CategoryNameInput}}" userInput =" Default Category" stepKey =" enterCategoryNameAsDefaultCategory" />
160
+ <click selector =" {{AdminCategoryMainActionsSection.SaveButton}}" stepKey =" saveCategoryDefaultCategory" />
161
+ <seeElement selector =" {{AdminCategoryMessagesSection.SuccessMessage}}" stepKey =" assertSuccessMessageAfterSaveDefaultCategory" />
162
+ </test >
163
+ </tests >
0 commit comments