Skip to content

Commit ce5fead

Browse files
committed
MAGETWO-91608: SEO-friendly URL for category page not working
-Functional test
1 parent d4a7a95 commit ce5fead

File tree

5 files changed

+105
-0
lines changed

5 files changed

+105
-0
lines changed

dev/tests/acceptance/tests/functional/Magento/FunctionalTest/Catalog/ActionGroup/AdminCategoryActionGroup.xml

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -128,6 +128,26 @@
128128
<see selector="{{AdminCategoryBasicFieldSection.FieldError('uid')}}" userInput="This is a required field." stepKey="seeErrorMessage"/>
129129
</actionGroup>
130130

131+
132+
<actionGroup name="switchCategoryStoreView">
133+
<arguments>
134+
<argument name="Store"/>
135+
<argument name="CatName"/>
136+
</arguments>
137+
<amOnPage url="{{AdminCategoryPage.page}}" stepKey="amOnCategoryPage"/>
138+
<waitForPageLoad stepKey="waitForPageLoad1"/>
139+
<click selector="{{AdminCategorySidebarTreeSection.categoryInTree(CatName)}}" stepKey="navigateToCreatedCategory" />
140+
<waitForPageLoad stepKey="waitForPageLoad2"/>
141+
<waitForLoadingMaskToDisappear stepKey="waitForSpinner"/>
142+
<scrollToTopOfPage stepKey="scrollToToggle"/>
143+
<click selector="{{AdminCategoryMainActionsSection.CategoryStoreViewDropdownToggle}}" stepKey="openStoreViewDropDown"/>
144+
<click selector="{{AdminCategoryMainActionsSection.CategoryStoreViewOption(Store)}}" stepKey="selectStoreView"/>
145+
<waitForPageLoad stepKey="waitForPageLoad3"/>
146+
<waitForLoadingMaskToDisappear stepKey="waitForSpinner2"/>
147+
<click selector="{{AdminCategoryMainActionsSection.CategoryStoreViewModalAccept}}" stepKey="selectStoreViewAccept"/>
148+
<waitForPageLoad stepKey="waitForStoreViewChangeLoad"/>
149+
</actionGroup>
150+
131151
<actionGroup name="navigateToCreatedCategory">
132152
<arguments>
133153
<argument name="Category"/>

dev/tests/acceptance/tests/functional/Magento/FunctionalTest/Catalog/Section/AdminCategoryBasicFieldSection.xml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,12 @@
1111
<section name="AdminCategoryBasicFieldSection">
1212
<element name="IncludeInMenu" type="checkbox" selector="input[name='include_in_menu']"/>
1313
<element name="includeInMenuLabel" type="text" selector="input[name='include_in_menu']+label"/>
14+
<element name="includeInMenuUseDefault" type="checkbox" selector="input[name='use_default[include_in_menu]']"/>
1415
<element name="EnableCategory" type="checkbox" selector="input[name='is_active']"/>
1516
<element name="enableCategoryLabel" type="text" selector="input[name='is_active']+label"/>
17+
<element name="enableUseDefault" type="checkbox" selector="input[name='use_default[is_active]']"/>
1618
<element name="CategoryNameInput" type="input" selector="input[name='name']"/>
19+
<element name="categoryNameUseDefault" type="checkbox" selector="input[name='use_default[name]']"/>
1720
<element name="ContentTab" type="input" selector="input[name='name']"/>
1821
<element name="FieldError" type="text" selector=".admin__field-error[data-bind='attr: {for: {{field}}}, text: error']" parameterized="true"/>
1922
</section>

dev/tests/acceptance/tests/functional/Magento/FunctionalTest/Catalog/Section/AdminCategoryMainActionsSection.xml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,5 +11,8 @@
1111
<section name="AdminCategoryMainActionsSection">
1212
<element name="SaveButton" type="button" selector=".page-actions-inner #save" timeout="30"/>
1313
<element name="DeleteButton" type="button" selector=".page-actions-inner #delete" timeout="30"/>
14+
<element name="CategoryStoreViewDropdownToggle" type="button" selector="#store-change-button"/>
15+
<element name="CategoryStoreViewOption" type="button" selector="//div[contains(@class, 'store-switcher')]//a[normalize-space()='{{store}}']" parameterized="true"/>
16+
<element name="CategoryStoreViewModalAccept" type="button" selector=".modal-popup.confirm._show .action-accept"/>
1417
</section>
1518
</sections>

dev/tests/acceptance/tests/functional/Magento/FunctionalTest/Catalog/Section/AdminCategorySEOSection.xml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@
1111
<section name="AdminCategorySEOSection">
1212
<element name="SectionHeader" type="button" selector="div[data-index='search_engine_optimization']" timeout="30"/>
1313
<element name="UrlKeyInput" type="input" selector="input[name='url_key']"/>
14+
<element name="UrlKeyDefaultValueCheckbox" type="button" selector="input[name='use_default[url_key]']"/>
15+
<element name="UrlKeyRedirectCheckbox" type="button" selector="[data-index='url_key_create_redirect'] input[type='checkbox']"/>
1416
<element name="MetaTitleInput" type="input" selector="input[name='meta_title']"/>
1517
<element name="MetaKeywordsInput" type="textarea" selector="textarea[name='meta_keywords']"/>
1618
<element name="MetaDescriptionInput" type="textarea" selector="textarea[name='meta_description']"/>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
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="AdminUpdateCategoryStoreUrlKeyTest">
12+
<annotations>
13+
<features value="SEO-friendly URL Key Update"/>
14+
<stories value="Update SEO-friendly URL via the Admin"/>
15+
<title value="SEO-friendly URL should update regardless of scope or redirect change."/>
16+
<description value="SEO-friendly URL should update regardless of scope or redirect change."/>
17+
<severity value="CRITICAL"/>
18+
<testCaseId value="MAGETWO-92338"/>
19+
<group value="category"/>
20+
</annotations>
21+
<after>
22+
<actionGroup ref="DeleteCategory" stepKey="deleteCategory">
23+
<argument name="categoryEntity" value="_defaultCategory"/>
24+
</actionGroup>
25+
<amOnPage url="admin/admin/auth/logout/" stepKey="amOnLogoutPage"/>
26+
</after>
27+
28+
<!-- Create category, change store view to default -->
29+
<actionGroup ref="LoginAsAdmin" stepKey="loginAsAdmin"/>
30+
<amOnPage url="{{AdminCategoryPage.url}}" stepKey="navigateToCategoryPage"/>
31+
<waitForPageLoad stepKey="waitForPageLoad1"/>
32+
<actionGroup ref="CreateCategory" stepKey="createCategory">
33+
<argument name="categoryEntity" value="_defaultCategory"/>
34+
</actionGroup>
35+
36+
<!--Switch to "Default Store View" scope-->
37+
<actionGroup ref="switchCategoryStoreView" stepKey="SwitchStoreView">
38+
<argument name="Store" value="_defaultStore.name"/>
39+
<argument name="CatName" value="_defaultCategory.name"/>
40+
</actionGroup>
41+
<!--See "Use Default Value" checkboxes-->
42+
<seeElement selector="{{AdminCategoryBasicFieldSection.enableUseDefault}}" stepKey="seeUseDefaultEnable"/>
43+
<seeElement selector="{{AdminCategoryBasicFieldSection.includeInMenuUseDefault}}" stepKey="seeUseDefaultMenu"/>
44+
<seeElement selector="{{AdminCategoryBasicFieldSection.categoryNameUseDefault}}" stepKey="seeUseDefaultName"/>
45+
<!-- Update SEO key, uncheck "Create Redirect", confirm in frontend -->
46+
<click selector="{{AdminCategorySEOSection.SectionHeader}}" stepKey="openSeoSection"/>
47+
<uncheckOption selector="{{AdminCategorySEOSection.UrlKeyDefaultValueCheckbox}}" stepKey="uncheckUseDefaultUrlKey"/>
48+
<fillField selector="{{AdminCategorySEOSection.UrlKeyInput}}" userInput="{{_defaultCategory.name_lwr}}-hattest" stepKey="enterURLKey"/>
49+
<uncheckOption selector="{{AdminCategorySEOSection.UrlKeyRedirectCheckbox}}" stepKey="uncheckRedirect1"/>
50+
<click selector="{{AdminCategoryMainActionsSection.SaveButton}}" stepKey="saveCategoryAfterFirstSeoUpdate"/>
51+
<seeElement selector="{{AdminCategoryMessagesSection.SuccessMessage}}" stepKey="assertSuccessMessage"/>
52+
<amOnPage url="" stepKey="goToStorefront"/>
53+
<waitForPageLoad stepKey="waitForFrontendLoad"/>
54+
<click stepKey="clickCategory" selector="{{StorefrontHeaderSection.NavigationCategoryByName(_defaultCategory.name)}}"/>
55+
<see selector="{{StorefrontCategoryMainSection.CategoryTitle}}" userInput="{{_defaultCategory.name}}" stepKey="assertCategoryOnStorefront"/>
56+
<seeInTitle userInput="{{_defaultCategory.name}}" stepKey="seeCategoryNameInTitle"/>
57+
<seeInCurrentUrl stepKey="verifyUrlKey" url="{{_defaultCategory.name_lwr}}-hattest.html"/>
58+
59+
<!-- Update SEO key to original, uncheck "Create Redirect", confirm in frontend, delete category -->
60+
<!--Switch to "Default Store View" scope-->
61+
<actionGroup ref="switchCategoryStoreView" stepKey="SwitchStoreView2">
62+
<argument name="Store" value="_defaultStore.name"/>
63+
<argument name="CatName" value="_defaultCategory.name"/>
64+
</actionGroup>
65+
<click selector="{{AdminCategorySEOSection.SectionHeader}}" stepKey="openSeoSection2"/>
66+
<fillField selector="{{AdminCategorySEOSection.UrlKeyInput}}" userInput="{{_defaultCategory.name_lwr}}" stepKey="enterOriginalURLKey"/>
67+
<uncheckOption selector="{{AdminCategorySEOSection.UrlKeyRedirectCheckbox}}" stepKey="uncheckRedirect2"/>
68+
<click selector="{{AdminCategoryMainActionsSection.SaveButton}}" stepKey="saveCategoryAfterOriginalSeoKey"/>
69+
<seeElement selector="{{AdminCategoryMessagesSection.SuccessMessage}}" stepKey="assertSuccessMessageAfterOriginalSeoKey"/>
70+
<amOnPage url="" stepKey="goToStorefrontAfterOriginalSeoKey"/>
71+
<waitForPageLoad stepKey="waitForFrontendLoadAfterOriginalSeoKey"/>
72+
<click stepKey="clickCategoryAfterOriginalSeoKey" selector="{{StorefrontHeaderSection.NavigationCategoryByName(_defaultCategory.name)}}"/>
73+
<see selector="{{StorefrontCategoryMainSection.CategoryTitle}}" userInput="{{_defaultCategory.name}}" stepKey="assertCategoryOnStorefront2"/>
74+
<seeInTitle userInput="{{_defaultCategory.name}}" stepKey="seeCategoryNameInTitle2"/>
75+
<seeInCurrentUrl stepKey="verifyUrlKeyAfterOriginalSeoKey" url="{{_defaultCategory.name_lwr}}.html"/>
76+
</test>
77+
</tests>

0 commit comments

Comments
 (0)