Skip to content

Commit 9f74ef5

Browse files
shashikant.kumarshashikant.kumar
authored andcommitted
AC-4455 Order Data Grid displays Purchase Date in correct format
1 parent af9ab20 commit 9f74ef5

File tree

3 files changed

+225
-0
lines changed

3 files changed

+225
-0
lines changed

app/code/Magento/Backend/Test/Mftf/Section/LocaleOptionsSection.xml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,5 +16,11 @@
1616
<element name="localeDisabled" type="select" selector="#general_locale_code[disabled=disabled]"/>
1717
<element name="useDefault" type="checkbox" selector="#general_locale_timezone_inherit"/>
1818
<element name="defaultLocale" type="checkbox" selector="#general_locale_code_inherit"/>
19+
<element name="checkIfTabExpand" type="button" selector="#general_locale-head:not(.open)"/>
20+
<element name="timeZoneDropdown" type="select" selector="//select[@id='general_locale_timezone']"/>
21+
<element name="changeStoreConfigButton" type="button" selector="//button[@id='store-change-button']"/>
22+
<element name="changeStoreConfigToSpecificWebsite" type="select" selector="//a[contains(text(),'{{var}}')]" parameterized="true"/>
23+
<element name="changeWebsiteConfirmButton" type="button" selector="//button[@class='action-primary action-accept']/span"/>
24+
<element name="checkboxTimeZone" type="checkbox" selector="//input[@id='general_locale_timezone_inherit']"/>
1925
</section>
2026
</sections>
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
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+
<actionGroups xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
9+
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/actionGroupSchema.xsd">
10+
<actionGroup name="AdminChangeTimeZoneForDifferentWebsiteActionGroup">
11+
<annotations>
12+
<description>set the time zone for different website</description>
13+
</annotations>
14+
<arguments>
15+
<argument name="websiteName" type="string" defaultValue="{{SimpleProduct.sku}}"/>
16+
<argument name="timeZoneName" type="string"/>
17+
</arguments>
18+
<amOnPage url="{{GeneralConfigurationPage.url}}" stepKey="navigateToLocaleConfigurationPage"/>
19+
<waitForPageLoad stepKey="waitForPageLoad"/>
20+
<click selector="{{LocaleOptionsSection.changeStoreConfigButton}}" stepKey="changeStoreButton"/>
21+
<wait time="10" stepKey="waitForStoreOption"/>
22+
<click selector="{{LocaleOptionsSection.changeStoreConfigToSpecificWebsite(websiteName)}}" stepKey="selectNewWebsite"/>
23+
<wait time="10" stepKey="waitForWebsiteChange"/>
24+
<!-- Accept the current popup visible on the page. -->
25+
<click selector="{{LocaleOptionsSection.changeWebsiteConfirmButton}}" stepKey="confirmModal"/>
26+
<wait time="10" stepKey="waitForPageLoad"/>
27+
<conditionalClick stepKey="expandDefaultLayouts" selector="{{LocaleOptionsSection.sectionHeader}}" dependentSelector="{{LocaleOptionsSection.CheckIfTabExpand}}" visible="true"/>
28+
<click selector="{{LocaleOptionsSection.checkboxTimeZone}}" stepKey="unCheckCheckbox"/>
29+
<waitForElementVisible selector="{{LocaleOptionsSection.timezone}}" stepKey="waitForLocaleTimeZone"/>
30+
<selectOption userInput="{{timeZoneName}}" selector="{{LocaleOptionsSection.timeZoneDropdown}}" stepKey="selectDefaultOption"/>
31+
</actionGroup>
32+
</actionGroups>
Lines changed: 187 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,187 @@
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="SampleOneTest">
12+
<annotations>
13+
<title value="Order Data Grid displays Purchase Date in correct format"/>
14+
<description value="Order Data Grid displays Purchase Date in correct format"/>
15+
<testCaseId value="AC-4455"/>
16+
<severity value="MAJOR"/>
17+
</annotations>
18+
<before>
19+
<!-- Set Store Code To Urls -->
20+
<magentoCLI command="config:set {{StorefrontEnableAddStoreCodeToUrls.path}} {{StorefrontEnableAddStoreCodeToUrls.value}}" stepKey="setAddStoreCodeToUrlsToYes"/>
21+
<!-- Login as Admin -->
22+
<actionGroup ref="AdminLoginActionGroup" stepKey="loginAsAdmin"/>
23+
<!--Create website-->
24+
<actionGroup ref="AdminCreateWebsiteActionGroup" stepKey="createSecondWebsite">
25+
<argument name="newWebsiteName" value="{{secondCustomWebsite.name}}"/>
26+
<argument name="websiteCode" value="{{secondCustomWebsite.code}}"/>
27+
</actionGroup>
28+
<!-- Create second store -->
29+
<actionGroup ref="AdminCreateNewStoreGroupActionGroup" stepKey="createSecondStoreGroup">
30+
<argument name="website" value="{{secondCustomWebsite.name}}"/>
31+
<argument name="storeGroupName" value="{{SecondStoreGroupUnique.name}}"/>
32+
<argument name="storeGroupCode" value="{{SecondStoreGroupUnique.code}}"/>
33+
</actionGroup>
34+
<!-- Create second store view -->
35+
<actionGroup ref="AdminCreateStoreViewActionGroup" stepKey="createSecondStoreView">
36+
<argument name="StoreGroup" value="SecondStoreGroupUnique"/>
37+
<argument name="customStore" value="SecondStoreUnique"/>
38+
</actionGroup>
39+
<magentoCron groups="index" stepKey="reindexAllIndexes"/>
40+
<!-- Change time zone for second website-->
41+
<actionGroup ref="AdminChangeTimeZoneForDifferentWebsiteActionGroup" stepKey="openConfigPage">
42+
<argument name="websiteName" value="{{secondCustomWebsite.name}}"/>
43+
<argument name="timeZoneName" value="Hawaii-Aleutian Standard Time (America/Adak)"/>
44+
</actionGroup>
45+
<actionGroup ref="AdminSaveConfigActionGroup" stepKey="saveConfiguration"/>
46+
<!-- Change time zone for Main website-->
47+
<actionGroup ref="AdminChangeTimeZoneForDifferentWebsiteActionGroup" stepKey="openConfigPageSecondTime">
48+
<argument name="websiteName" value="Main Website"/>
49+
<argument name="timeZoneName" value="Taipei Standard Time (Asia/Taipei)"/>
50+
</actionGroup>
51+
<actionGroup ref="AdminSaveConfigActionGroup" stepKey="saveConfigurationSecondTime"/>
52+
<!-- Create category and simple product -->
53+
<createData entity="ApiCategory" stepKey="createCategory"/>
54+
<createData entity="ApiSimpleProduct" stepKey="createSimpleProduct">
55+
<requiredEntity createDataKey="createCategory"/>
56+
<field key="price">10</field>
57+
</createData>
58+
<!-- Open product page and assign grouped project to second website -->
59+
<actionGroup ref="FilterAndSelectProductActionGroup" stepKey="openAdminProductPage">
60+
<argument name="productSku" value="$$createSimpleProduct.sku$$"/>
61+
</actionGroup>
62+
<actionGroup ref="AdminAssignProductInWebsiteActionGroup" stepKey="assignProductToSecondWebsite">
63+
<argument name="website" value="{{secondCustomWebsite.name}}"/>
64+
</actionGroup>
65+
<actionGroup ref="SaveProductFormActionGroup" stepKey="saveSimpleProduct"/>
66+
<createData entity="Simple_US_Customer" stepKey="createCustomer"/>
67+
<!--Go to Storefront as Customer-->
68+
<actionGroup ref="LoginToStorefrontActionGroup" stepKey="customerLogin">
69+
<argument name="Customer" value="$$createCustomer$$" />
70+
</actionGroup>
71+
</before>
72+
73+
<after>
74+
<!-- Disabled Store URLs -->
75+
<magentoCLI command="config:set {{StorefrontDisableAddStoreCodeToUrls.path}} {{StorefrontDisableAddStoreCodeToUrls.value}}" stepKey="setAddStoreCodeToUrlsToNo"/>
76+
<!-- Delete Category -->
77+
<deleteData createDataKey="createCategory" stepKey="deleteCategory"/>
78+
<!-- Delete simple product -->
79+
<deleteData createDataKey="createSimpleProduct" stepKey="deleteSimpleProduct"/>
80+
<!-- Delete first customer -->
81+
<deleteData createDataKey="createCustomer" stepKey="deleteFirstCustomer"/>
82+
<!-- Delete second customer -->
83+
<deleteData createDataKey="createSecondCustomer" stepKey="deleteSecondCustomer"/>
84+
<amOnPage url="{{AdminDashboardPage.url}}" stepKey="gotoOnDashboardPage"/>
85+
<waitForPageLoad stepKey="waitForDashboardPageToLoad"/>
86+
<!--set main website as default-->
87+
<actionGroup ref="AdminSetDefaultWebsiteActionGroup" stepKey="setMainWebsiteAsDefault">
88+
<argument name="websiteName" value="Main Website"/>
89+
</actionGroup>
90+
<!-- Delete second website -->
91+
<actionGroup ref="AdminDeleteWebsiteActionGroup" stepKey="deleteWebsite">
92+
<argument name="websiteName" value="{{secondCustomWebsite.name}}"/>
93+
</actionGroup>
94+
<magentoCron groups="index" stepKey="reindex"/>
95+
<!--reset prouct grid filter-->
96+
<actionGroup ref="NavigateToAndResetProductGridToDefaultViewActionGroup" stepKey="resetProductGridFilter"/>
97+
<!-- Admin logout -->
98+
<actionGroup ref="AdminLogoutActionGroup" stepKey="adminLogout"/>
99+
</after>
100+
<!-- Go to product page -->
101+
<amOnPage url="$$createSimpleProduct.custom_attributes[url_key]$$.html" stepKey="navigateToSimpleProductPage"/>
102+
<waitForPageLoad stepKey="waitForCatalogPageLoad"/>
103+
<!-- Add Product to Shopping Cart -->
104+
<actionGroup ref="AddToCartFromStorefrontProductPageActionGroup" stepKey="addToCartFromStorefrontProductPage">
105+
<argument name="productName" value="$$createSimpleProduct.name$$"/>
106+
</actionGroup>
107+
<!-- Go to Checkout -->
108+
<actionGroup ref="GoToCheckoutFromMinicartActionGroup" stepKey="goToCheckoutFromMiniCart"/>
109+
<actionGroup ref="StorefrontSelectFirstShippingMethodActionGroup" stepKey="selectFlatRateShippingMethod"/>
110+
<comment userInput="Adding the comment to replace waitForLoadingMask2 action for preserving Backward Compatibility" stepKey="waitForLoadingMask2"/>
111+
<actionGroup ref="StorefrontCheckoutClickNextButtonActionGroup" stepKey="clickNext"/>
112+
<!-- Checkout select Check/Money Order payment -->
113+
<actionGroup ref="CheckoutSelectCheckMoneyOrderPaymentActionGroup" stepKey="selectCheckMoneyPayment"/>
114+
<!-- Click Place Order button -->
115+
<actionGroup ref="ClickPlaceOrderActionGroup" stepKey="clickPlaceOrder"/>
116+
<!-- capture date at time of Placeing Order -->
117+
<generateDate date="+2 hour" format="M j, Y" stepKey="generateDateAtFirstOrderTime"/>
118+
<grabTextFrom selector="{{CheckoutSuccessMainSection.orderNumber22}}" stepKey="grabFirstOrderNumber"/>
119+
<amOnPage url="{{AdminDashboardPage.url}}" stepKey="amOnDashboardPage"/>
120+
<waitForPageLoad stepKey="waitForDashboardPageLoad"/>
121+
<!--set second website as default-->
122+
<actionGroup ref="AdminSetDefaultWebsiteActionGroup" stepKey="setSecondWebsiteAsDefault">
123+
<argument name="websiteName" value="{{secondCustomWebsite.name}}"/>
124+
</actionGroup>
125+
<!-- create second Customer-->
126+
<createData entity="Simple_US_Customer_CA" stepKey="createSecondCustomer"/>
127+
<!--Go to Storefront as Customer-->
128+
<actionGroup ref="LoginToStorefrontActionGroup" stepKey="secondCustomerLogin">
129+
<argument name="Customer" value="$$createSecondCustomer$$" />
130+
</actionGroup>
131+
<!-- Go to product page -->
132+
<amOnPage url="$$createSimpleProduct.custom_attributes[url_key]$$.html" stepKey="navigateToSimpleProductPageSecondTime"/>
133+
<waitForPageLoad stepKey="waitForCatalogPageLoadSecondTime"/>
134+
<!-- Add Product to Shopping Cart -->
135+
<actionGroup ref="AddToCartFromStorefrontProductPageActionGroup" stepKey="addToCartFromStorefrontProductPageSecondTime">
136+
<argument name="productName" value="$$createSimpleProduct.name$$"/>
137+
</actionGroup>
138+
<!-- Go to Checkout -->
139+
<actionGroup ref="GoToCheckoutFromMinicartActionGroup" stepKey="goToCheckoutFromMiniCartSecondTime"/>
140+
<actionGroup ref="StorefrontSelectFirstShippingMethodActionGroup" stepKey="selectFlatRateShippingMethodSecondTime"/>
141+
<actionGroup ref="StorefrontCheckoutClickNextButtonActionGroup" stepKey="clickNextSecondTime"/>
142+
<!-- Checkout select Check/Money Order payment -->
143+
<actionGroup ref="CheckoutSelectCheckMoneyOrderPaymentActionGroup" stepKey="selectCheckMoneyPaymentSecondTime"/>
144+
<!-- Click Place Order button -->
145+
<wait time="75" stepKey="waitBeforePlaceOrder"/>
146+
<actionGroup ref="ClickPlaceOrderActionGroup" stepKey="clickPlaceOrderSecondTime"/>
147+
<!-- capture date at time of Placeing Order -->
148+
<generateDate date="+2 hour" format="M j, Y" stepKey="generateDateAtSecondOrderTime"/>
149+
<grabTextFrom selector="{{CheckoutSuccessMainSection.orderNumber22}}" stepKey="grabSecondOrderNumber"/>
150+
<!-- Go to admin and check order status -->
151+
<actionGroup ref="AdminOrdersPageOpenActionGroup" stepKey="navigateToSalesOrderPage"/>
152+
<actionGroup ref="SearchAdminDataGridByKeywordActionGroup" stepKey="searchForFirstOrder">
153+
<argument name="keyword" value="{$grabFirstOrderNumber}"/>
154+
</actionGroup>
155+
<!--Get date from "Purchase Date" column -->
156+
<grabTextFrom selector="{{AdminOrdersGridSection.gridCell('1','Purchase Date')}}" stepKey="grabPurchaseDateForFirstOrderInDefaultLocale"/>
157+
<!--Get date and time in default locale (US)-->
158+
<executeJS function="return (new Date('{$grabPurchaseDateForFirstOrderInDefaultLocale}').toLocaleDateString('en-US',{month: 'short', day: 'numeric', year: 'numeric'} ))" stepKey="getDateMonthYearNameForFirstOrderInUS"/>
159+
<!--Checking oder placing Date with default "Interface Locale"-->
160+
<assertStringContainsString stepKey="checkingFirstOrderDateWithPurchaseDate">
161+
<expectedResult type="variable">getDateMonthYearNameForFirstOrderInUS</expectedResult>
162+
<actualResult type="variable">grabPurchaseDateForFirstOrderInDefaultLocale</actualResult>
163+
</assertStringContainsString>
164+
<!--compare date of order with date of purchase-->
165+
<assertStringContainsString stepKey="checkingFirstOrderDateWithDefaultInterfaceLocale1">
166+
<expectedResult type="variable">generateDateAtFirstOrderTime</expectedResult>
167+
<actualResult type="variable">grabPurchaseDateForFirstOrderInDefaultLocale</actualResult>
168+
</assertStringContainsString>
169+
<actionGroup ref="SearchAdminDataGridByKeywordActionGroup" stepKey="searchForSecondOrder">
170+
<argument name="keyword" value="{$grabSecondOrderNumber}"/>
171+
</actionGroup>
172+
<!--Get date from "Purchase Date" column-->
173+
<grabTextFrom selector="{{AdminOrdersGridSection.gridCell('1','Purchase Date')}}" stepKey="grabPurchaseDateForSecondOrderInDefaultLocale"/>
174+
<!--Get date and time in default locale (US)-->
175+
<executeJS function="return (new Date('{$grabPurchaseDateForSecondOrderInDefaultLocale}').toLocaleDateString('en-US',{month: 'short', day: 'numeric', year: 'numeric'} ))" stepKey="getDateMonthYearNameForSecondOrderInUS"/>
176+
<!--Checking Purchase Date with default "Interface Locale"-->
177+
<assertStringContainsString stepKey="checkingSecondOrderDateWithDefaultInterfaceLocale">
178+
<expectedResult type="variable">getDateMonthYearNameForSecondOrderInUS</expectedResult>
179+
<actualResult type="variable">grabPurchaseDateForSecondOrderInDefaultLocale</actualResult>
180+
</assertStringContainsString>
181+
<!--compare date of order with date of purchase-->
182+
<assertStringContainsString stepKey="checkingSecondOrderDateWithPurchaseDate">
183+
<expectedResult type="variable">generateDateAtSecondOrderTime</expectedResult>
184+
<actualResult type="variable">grabPurchaseDateForFirstOrderInDefaultLocale</actualResult>
185+
</assertStringContainsString>
186+
</test>
187+
</tests>

0 commit comments

Comments
 (0)