Skip to content

Commit e1d4d68

Browse files
author
OlgaVasyltsun
committed
MAGETWO-93755: Catalog grid page number resets after Save and Close action.
1 parent 1a633e7 commit e1d4d68

File tree

5 files changed

+49
-44
lines changed

5 files changed

+49
-44
lines changed

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

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,13 +104,20 @@
104104
<waitForPageLoad stepKey="waitForPageLoad"/>
105105
</actionGroup>
106106

107-
<actionGroup name="DeleteProductsIfTheyExist">
107+
<actionGroup name="DeleteAllProducts">
108108
<conditionalClick selector="{{AdminProductGridSection.multicheckDropdown}}" dependentSelector="{{AdminDataGridTableSection.firstRow}}" visible="true" stepKey="openMulticheckDropdown"/>
109109
<conditionalClick selector="{{AdminProductGridSection.multicheckOption('Select All')}}" dependentSelector="{{AdminDataGridTableSection.firstRow}}" visible="true" stepKey="selectAllProductInFilteredGrid"/>
110110
<click selector="{{AdminProductGridSection.bulkActionDropdown}}" stepKey="clickActionDropdown"/>
111111
<click selector="{{AdminProductGridSection.bulkActionOption('Delete')}}" stepKey="clickDeleteAction"/>
112112
<waitForElementVisible selector="{{AdminConfirmationModalSection.ok}}" stepKey="waitForModalPopUp"/>
113+
<grabTextFrom selector="{{AdminConfirmationModalSection.message}}" stepKey="grabConfirmationMessage"/>
113114
<click selector="{{AdminConfirmationModalSection.ok}}" stepKey="confirmProductDelete"/>
115+
<executeInSelenium function="function () use ($I, $grabConfirmationMessage) {
116+
if ($grabConfirmationMessage !== 'You haven\'t selected any items!') {
117+
$I->waitForElementVisible('#messages div.message-success');
118+
$I->see('record(s) have been deleted.', '#messages div.message-success');
119+
}
120+
}" stepKey="waitSuccessMessage"/>
114121
</actionGroup>
115122

116123
</actionGroups>

app/code/Magento/Catalog/Test/Mftf/Data/ProductGridData.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
<entities xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
1010
xsi:noNamespaceSchemaLocation="urn:magento:mftf:DataGenerator/etc/dataProfileSchema.xsd">
11-
<entity name="ProductPerPage">
12-
<data key="productCount">1</data>
11+
<entity name="ProductGridPagerData">
12+
<data key="pageSize">1</data>
1313
</entity>
1414
</entities>

app/code/Magento/Catalog/Test/Mftf/Test/AdminGridPageNumberAfterSaveAndCloseActionTest.xml

Lines changed: 13 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -17,50 +17,47 @@
1717
<severity value="MAJOR"/>
1818
<testCaseId value="MC-17278"/>
1919
<useCaseId value="MAGETWO-93755"/>
20-
<group value="Catalog"/>
20+
<group value="catalog"/>
2121
</annotations>
2222
<before>
2323
<actionGroup ref="LoginAsAdmin" stepKey="loginAsAdmin"/>
2424
<!--Clear product grid-->
2525
<comment userInput="Clear product grid" stepKey="commentClearProductsGrid"/>
2626
<amOnPage url="{{AdminCatalogProductPage.url}}" stepKey="goToProductsGridPage"/>
2727
<actionGroup ref="clearFiltersAdminDataGrid" stepKey="clearProductsFilters"/>
28-
<actionGroup ref="DeleteProductsIfTheyExist" stepKey="deleteProductIfTheyExist"/>
28+
<actionGroup ref="DeleteAllProducts" stepKey="deleteProductsIfTheyExist"/>
2929
<!--Create products-->
30-
<createData entity="SimpleSubCategory" stepKey="createCategory1"/>
31-
<createData entity="SimpleProduct" stepKey="createProduct1">
32-
<requiredEntity createDataKey="createCategory1"/>
33-
</createData>
34-
<createData entity="SimpleSubCategory" stepKey="createCategory2"/>
35-
<createData entity="SimpleProduct" stepKey="createProduct2">
36-
<requiredEntity createDataKey="createCategory2"/>
37-
</createData>
30+
<createData entity="SimpleProduct3" stepKey="createProduct1"/>
31+
<createData entity="SimpleProduct3" stepKey="createProduct2"/>
3832
<!--Update product count per page-->
39-
<actionGroup ref="AdminDataGridSelectCustomPerPage" stepKey="select1OrderPerPage"/>
33+
<actionGroup ref="AdminDataGridSelectCustomPageSize" stepKey="selectCustomPageSize">
34+
<argument name="pageSize" value="{{ProductGridPagerData.pageSize}}"/>
35+
</actionGroup>
4036
</before>
4137
<after>
4238
<!--Delete created data-->
43-
<deleteData stepKey="deleteCategory1" createDataKey="createCategory1"/>
4439
<deleteData stepKey="deleteProduct1" createDataKey="createProduct1"/>
45-
<deleteData stepKey="deleteCategory2" createDataKey="createCategory2"/>
4640
<deleteData stepKey="deleteProduct2" createDataKey="createProduct2"/>
4741
<!--Revert products count per page -->
42+
<conditionalClick selector="{{AdminDataGridPaginationSection.previousPage}}" dependentSelector="{{AdminDataGridPaginationSection.previousPage}}" visible="true" stepKey="clickPrevPageOrderGrid"/>
4843
<amOnPage url="{{AdminCatalogProductPage.url}}" stepKey="goToProductsGridPage"/>
49-
<actionGroup ref="AdminDataGridDeleteCustomPerPage" stepKey="deleteCustomAddedPerPage"/>
44+
<actionGroup ref="AdminDataGridDeleteCustomPageSize" stepKey="deleteCustomAddedPageSize">
45+
<argument name="pageSize" value="{{ProductGridPagerData.pageSize}}"/>
46+
</actionGroup>
5047
<actionGroup ref="logout" stepKey="logout"/>
5148
</after>
5249

5350
<amOnPage url="{{AdminCatalogProductPage.url}}" stepKey="goToProductsGridPage"/>
5451
<!--Go to the next page and edit the product-->
5552
<comment userInput="Go to the next page and edit the product" stepKey="commentEdiProduct"/>
5653
<click selector="{{AdminDataGridPaginationSection.nextPage}}" stepKey="clickNextPageOrderGrid"/>
54+
<waitForElementVisible selector="{{AdminDataGridPaginationSection.currentPage}}" stepKey="waitCurrentPageNumberAppeares"/>
5755
<seeInField selector="{{AdminDataGridPaginationSection.currentPage}}" userInput="2" stepKey="seeOnSecondPageOrderGrid"/>
58-
<waitForPageLoad stepKey="waitForPageLoad"/>
5956
<actionGroup ref="OpenEditProductOnBackendActionGroup" stepKey="openEditProduct2">
6057
<argument name="product" value="$$createProduct2$$"/>
6158
</actionGroup>
6259
<actionGroup ref="AdminFormSaveAndClose" stepKey="saveAndCloseProduct"/>
63-
<waitForPageLoad stepKey="waitForPageLoad1"/>
60+
<waitForElementVisible selector="{{AdminDataGridPaginationSection.currentPage}}" stepKey="waitCurrentPageNumberAppearesAfterProductEdit"/>
6461
<seeInField selector="{{AdminDataGridPaginationSection.currentPage}}" userInput="2" stepKey="seeOnSecondPageOrderGridAfterProductSaved"/>
6562
</test>
6663
</tests>

app/code/Magento/Ui/Test/Mftf/ActionGroup/AdminDataGridPaginationActionGroup.xml

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -8,28 +8,28 @@
88

99
<actionGroups xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
1010
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/actionGroupSchema.xsd">
11-
<actionGroup name="AdminDataGridSelectCustomPerPage">
11+
<actionGroup name="AdminDataGridSelectCustomPageSize">
1212
<arguments>
13-
<argument name="perPage" defaultValue="{{ProductPerPage.productCount}}" type="string"/>
13+
<argument name="pageSize" type="string"/>
1414
</arguments>
15-
<click selector="{{AdminDataGridPaginationSection.perPageDropdown}}" stepKey="clickPerPageDropdown"/>
16-
<click selector="{{AdminDataGridPaginationSection.perPageOption('Custom')}}" stepKey="selectCustomPerPage"/>
17-
<waitForElementVisible selector="{{AdminDataGridPaginationSection.perPageInput}}" stepKey="waitForInputVisible"/>
18-
<fillField selector="{{AdminDataGridPaginationSection.perPageInput}}" userInput="{{perPage}}" stepKey="fillCustomPerPage"/>
19-
<click selector="{{AdminDataGridPaginationSection.perPageApplyInput}}" stepKey="applyCustomPerPage"/>
20-
<waitForLoadingMaskToDisappear stepKey="waitForGridLoad"/>
21-
<seeInField selector="{{AdminDataGridPaginationSection.perPageDropDownValue}}" userInput="{{perPage}}" stepKey="seePerPageValueInDropDown"/>
15+
<click selector="{{AdminDataGridPaginationSection.pageSizeDropdown}}" stepKey="clickPageSizeDropdown"/>
16+
<waitForElementVisible selector="{{AdminDataGridPaginationSection.pageSizeOption('Custom')}}" stepKey="waitCustomPageSizeOptionAppear"/>
17+
<click selector="{{AdminDataGridPaginationSection.pageSizeOption('Custom')}}" stepKey="selectCustomPageSize"/>
18+
<waitForElementVisible selector="{{AdminDataGridPaginationSection.pageSizeInput}}" stepKey="waitForInputVisible"/>
19+
<fillField selector="{{AdminDataGridPaginationSection.pageSizeInput}}" userInput="{{pageSize}}" stepKey="fillCustomPageSize"/>
20+
<click selector="{{AdminDataGridPaginationSection.pageSizeApplyInput}}" stepKey="applyCustomPageSize"/>
21+
<seeInField selector="{{AdminDataGridPaginationSection.pageSizeDropDownValue}}" userInput="{{pageSize}}" stepKey="seePageSizeValueInDropDown"/>
2222
</actionGroup>
2323

24-
<actionGroup name="AdminDataGridDeleteCustomPerPage">
24+
<actionGroup name="AdminDataGridDeleteCustomPageSize">
2525
<arguments>
26-
<argument name="perPage" defaultValue="{{ProductPerPage.productCount}}" type="string"/>
26+
<argument name="pageSize" type="string"/>
2727
</arguments>
28-
<click selector="{{AdminDataGridPaginationSection.perPageDropdown}}" stepKey="clickPerPageDropdown"/>
29-
<click selector="{{AdminDataGridPaginationSection.perPageEditCustomValue(perPage)}}" stepKey="clickToEditCustomPerPage"/>
30-
<waitForElementVisible selector="{{AdminDataGridPaginationSection.perPageDeleteCustomValue(perPage)}}" stepKey="waitForDeleteButtonVisible"/>
31-
<click selector="{{AdminDataGridPaginationSection.perPageDeleteCustomValue(perPage)}}" stepKey="clickToDeleteCustomPerPage"/>
32-
<click selector="{{AdminDataGridPaginationSection.perPageDropdown}}" stepKey="clickPerPageDropdown1"/>
33-
<dontSeeElement selector="{{AdminDataGridPaginationSection.perPageDropDownItem(perPage)}}" stepKey="dontSeeDropDownItem"/>
28+
<click selector="{{AdminDataGridPaginationSection.pageSizeDropdown}}" stepKey="clickPageSizeDropdown"/>
29+
<click selector="{{AdminDataGridPaginationSection.pageSizeEditCustomValue(pageSize)}}" stepKey="clickToEditCustomPageSize"/>
30+
<waitForElementVisible selector="{{AdminDataGridPaginationSection.pageSizeDeleteCustomValue(pageSize)}}" stepKey="waitForDeleteButtonVisible"/>
31+
<click selector="{{AdminDataGridPaginationSection.pageSizeDeleteCustomValue(pageSize)}}" stepKey="clickToDeleteCustomPageSize"/>
32+
<click selector="{{AdminDataGridPaginationSection.pageSizeDropdown}}" stepKey="clickPageSizeDropdownAfterCustomPageSizeDeleted"/>
33+
<dontSeeElement selector="{{AdminDataGridPaginationSection.pageSizeDropDownItem(pageSize)}}" stepKey="dontSeeDropDownItem"/>
3434
</actionGroup>
3535
</actionGroups>

app/code/Magento/Ui/Test/Mftf/Section/AdminDataGridPaginationSection.xml

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,15 +9,16 @@
99
<sections xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
1010
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Page/etc/SectionObject.xsd">
1111
<section name="AdminDataGridPaginationSection">
12-
<element name="perPageDropdown" type="select" selector=".admin__data-grid-pager-wrap .selectmenu"/>
13-
<element name="perPageOption" type="button" selector="//div[@class='admin__data-grid-pager-wrap']//div[@class='selectmenu-items _active']//li//button[text()='{{var1}}']" parameterized="true"/>
14-
<element name="perPageInput" type="input" selector="div.admin__data-grid-pager-wrap div.selectmenu-items._active li._edit div.selectmenu-item-edit input" timeout="30"/>
15-
<element name="perPageApplyInput" type="button" selector="div.admin__data-grid-pager-wrap div.selectmenu-items._active li._edit div.selectmenu-item-edit button"/>
16-
<element name="perPageDropDownItem" type="button" selector="//*[contains(@class, 'selectmenu-items _active')]//button[contains(@class, 'selectmenu-item-action') and text()='{{dropDownItem}}']" parameterized="true"/>
17-
<element name="perPageEditCustomValue" type="button" selector="//div[contains(@class, 'selectmenu-items _active')]//div[contains(@class, 'selectmenu-item')]//button[text()='{{perPageCustomValue}}']/following-sibling::button[contains(@class, 'action-edit')]" parameterized="true"/>
18-
<element name="perPageDeleteCustomValue" type="button" selector="//div[contains(@class, 'selectmenu-items _active')]//div[contains(@class, 'selectmenu-item')]//button[text()='{{perPageCustomValue}}']/parent::div/preceding-sibling::div/button[contains(@class, 'action-delete')]" parameterized="true" timeout="30"/>
12+
<element name="pageSizeDropdown" type="select" selector=".admin__data-grid-pager-wrap .selectmenu"/>
13+
<element name="pageSizeOption" type="button" selector="//div[@class='admin__data-grid-pager-wrap']//div[@class='selectmenu-items _active']//li//button[text()='{{var1}}']" parameterized="true"/>
14+
<element name="pageSizeInput" type="input" selector="div.admin__data-grid-pager-wrap div.selectmenu-items._active li._edit div.selectmenu-item-edit input"/>
15+
<element name="pageSizeApplyInput" type="button" selector="div.admin__data-grid-pager-wrap div.selectmenu-items._active li._edit div.selectmenu-item-edit button" timeout="30"/>
16+
<element name="pageSizeDropDownItem" type="button" selector="//*[contains(@class, 'selectmenu-items _active')]//button[contains(@class, 'selectmenu-item-action') and text()='{{dropDownItem}}']" parameterized="true"/>
17+
<element name="pageSizeEditCustomValue" type="button" selector="//div[contains(@class, 'selectmenu-items _active')]//div[contains(@class, 'selectmenu-item')]//button[text()='{{perPageCustomValue}}']/following-sibling::button[contains(@class, 'action-edit')]" parameterized="true"/>
18+
<element name="pageSizeDeleteCustomValue" type="button" selector="//div[contains(@class, 'selectmenu-items _active')]//div[contains(@class, 'selectmenu-item')]//button[text()='{{perPageCustomValue}}']/parent::div/preceding-sibling::div/button[contains(@class, 'action-delete')]" parameterized="true" timeout="30"/>
1919
<element name="nextPage" type="button" selector="div.admin__data-grid-pager > button.action-next" timeout="30"/>
20+
<element name="previousPage" type="button" selector=".admin__data-grid-header:nth-of-type(2) div.admin__data-grid-pager > button.action-previous:not(disabled)" timeout="30"/>
2021
<element name="currentPage" type="input" selector="div.admin__data-grid-pager > input[data-ui-id='current-page-input']"/>
21-
<element name="perPageDropDownValue" type="input" selector=".admin__data-grid-pager-wrap .selectmenu-value input" timeout="30"/>
22+
<element name="pageSizeDropDownValue" type="input" selector=".admin__data-grid-pager-wrap .selectmenu-value input" timeout="30"/>
2223
</section>
2324
</sections>

0 commit comments

Comments
 (0)