Skip to content

Commit db729f9

Browse files
committed
MC-12666: Verify Shopping Cart Persistence under long-term cookie
1 parent 9312b47 commit db729f9

10 files changed

+329
-1
lines changed

app/code/Magento/Customer/Test/Mftf/ActionGroup/AssertCustomerLoggedInActionGroup.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
<arguments>
1313
<argument name="customerFullName" type="string" />
1414
</arguments>
15+
<waitForPageLoad stepKey="waitForPageLoad"/>
1516
<see userInput="Welcome, {{customerFullName}}!" selector="{{StorefrontPanelHeaderSection.welcomeMessage}}" stepKey="verifyMessage" />
1617
</actionGroup>
1718
</actionGroups>
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
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+
<actionGroups xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10+
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/actionGroupSchema.xsd">
11+
<actionGroup name="StorefrontAssertRegistrationPageFields">
12+
<seeInCurrentUrl url="{{StorefrontCustomerCreatePage.url}}" stepKey="seeCreateNewCustomerAccountPage"/>
13+
<seeElement selector="{{StorefrontCustomerCreateFormSection.firstnameField}}" stepKey="seeFirstNameField"/>
14+
<seeElement selector="{{StorefrontCustomerCreateFormSection.lastnameField}}" stepKey="seeFLastNameField"/>
15+
<seeElement selector="{{StorefrontCustomerCreateFormSection.emailField}}" stepKey="seeEmailField"/>
16+
<seeElement selector="{{StorefrontCustomerCreateFormSection.passwordField}}" stepKey="seePasswordField"/>
17+
<seeElement selector="{{StorefrontCustomerCreateFormSection.confirmPasswordField}}" stepKey="seeConfirmPasswordField"/>
18+
</actionGroup>
19+
</actionGroups>

app/code/Magento/Customer/Test/Mftf/Data/CustomerData.xml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -203,4 +203,14 @@
203203
<data key="store_id">0</data>
204204
<data key="website_id">0</data>
205205
</entity>
206+
<entity name="John_Smith_Customer" type="customer">
207+
<data key="group_id">1</data>
208+
<data key="email" unique="prefix">[email protected]</data>
209+
<data key="firstname">John</data>
210+
<data key="lastname">Smith</data>
211+
<data key="fullname">John Smith</data>
212+
<data key="password">pwdTest123!</data>
213+
<data key="store_id">0</data>
214+
<data key="website_id">0</data>
215+
</entity>
206216
</entities>

app/code/Magento/Customer/Test/Mftf/Section/StorefrontCustomerSignInFormSection.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
<element name="passwordField" type="input" selector="#pass"/>
1414
<element name="signInAccountButton" type="button" selector="#send2" timeout="30"/>
1515
<element name="forgotPasswordLink" type="button" selector=".action.remind" timeout="10"/>
16+
<element name="customerLoginBlock" type="text" selector=".login-container .block.block-customer-login"/>
1617
</section>
1718
<section name="StorefrontCustomerSignInPopupFormSection">
1819
<element name="errorMessage" type="input" selector="[data-ui-id='checkout-cart-validationmessages-message-error']"/>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
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+
<actionGroups xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10+
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/actionGroupSchema.xsd">
11+
<actionGroup name="StorefrontAssertPersistentRegistrationPageFields" extends="StorefrontAssertRegistrationPageFields">
12+
<seeCheckboxIsChecked selector="{{StorefrontCustomerSignInFormSection.rememberMe}}" after="seeConfirmPasswordField" stepKey="seeRememberMeChecked"/>
13+
</actionGroup>
14+
</actionGroups>

app/code/Magento/Persistent/Test/Mftf/ActionGroup/StorefrontCustomerActionGroup.xml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,4 +19,18 @@
1919
before="clickSignInAccountButton"
2020
stepKey="unCheckRememberMe"/>
2121
</actionGroup>
22+
23+
<actionGroup name="StorefrontRegisterCustomerRememberMe" extends="SignUpNewUserFromStorefrontActionGroup">
24+
<!--- Assume we are on customer registration page. -->
25+
<remove keyForRemoval="amOnStorefrontPage"/>
26+
<remove keyForRemoval="clickOnCreateAccountLink"/>
27+
<checkOption selector="{{StorefrontCustomerSignInFormSection.rememberMe}}" before="clickCreateAccountButton" stepKey="checkRememberMe"/>
28+
</actionGroup>
29+
30+
<actionGroup name="StorefrontCreateCustomerOnRegisterPageDoNotRememberMe" extends="SignUpNewUserFromStorefrontActionGroup">
31+
<!--- Assume we are on customer registration page. -->
32+
<remove keyForRemoval="amOnStorefrontPage"/>
33+
<remove keyForRemoval="clickOnCreateAccountLink"/>
34+
<uncheckOption selector="{{StorefrontCustomerSignInFormSection.rememberMe}}" before="clickCreateAccountButton" stepKey="unCheckRememberMe"/>
35+
</actionGroup>
2236
</actionGroups>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
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+
<actionGroups xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10+
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/actionGroupSchema.xsd">
11+
<actionGroup name="StorefrontAssertPersistentCustomerWelcomeMessageActionGroup">
12+
<arguments>
13+
<argument name="customerFullName" type="string" />
14+
</arguments>
15+
<waitForPageLoad stepKey="waitForPageLoad"/>
16+
<see selector="{{StorefrontPanelHeaderSection.welcomeMessage}}" userInput="Welcome, {{customerFullName}}! Not you?" stepKey="verifyMessage" />
17+
</actionGroup>
18+
19+
<actionGroup name="StorefrontAssertPersistentCustomerWelcomeMessageNotPresentActionGroup" extends="StorefrontAssertPersistentCustomerWelcomeMessageActionGroup">
20+
<remove keyForRemoval="verifyMessage"/>
21+
<dontSee selector="{{StorefrontPanelHeaderSection.welcomeMessage}}" userInput="Welcome, {{customerFullName}}! Not you?" stepKey="dontSeeWelcomeMessageNotYou"/>
22+
</actionGroup>
23+
</actionGroups>

app/code/Magento/Persistent/Test/Mftf/Data/PersistentData.xml

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,4 +34,61 @@
3434
<entity name="PersistentDisableLogoutClear" type="logout_clear">
3535
<data key="value">0</data>
3636
</entity>
37+
38+
39+
<!-- Persistent Configurations settings -->
40+
<entity name="PersistentConfigSettings" type="persistent_config_state">
41+
<requiredEntity type="persistent_options_enabled">persistentEnabledState</requiredEntity>
42+
<requiredEntity type="persistent_options_lifetime">SecondsOfPersistentLifetime</requiredEntity>
43+
<requiredEntity type="persistent_options_remember_enabled">EnablePersistentRememberMe</requiredEntity>
44+
<requiredEntity type="persistent_options_remember_default">EnablePersistentRememberMeDefaultValue</requiredEntity>
45+
<requiredEntity type="persistent_options_logout_clear">PersistentDisableLogoutClear</requiredEntity>
46+
<requiredEntity type="persistent_options_shopping_cart">EnablePersistentShoppingCart</requiredEntity>
47+
</entity>
48+
49+
<entity name="SecondsOfPersistentLifetime" type="lifetime">
50+
<data key="value">31536000</data>
51+
</entity>
52+
<entity name="EnablePersistentRememberMe" type="persistent_options_remember_enabled">
53+
<data key="value">1</data>
54+
</entity>
55+
<entity name="EnablePersistentRememberMeDefaultValue" type="persistent_options_remember_default">
56+
<data key="value">1</data>
57+
</entity>
58+
<entity name="EnablePersistentShoppingCart" type="persistent_options_shopping_cart">
59+
<data key="value">1</data>
60+
</entity>
61+
62+
<!-- Use System Value settings -->
63+
<entity name="PersistentConfigUseSystemValue" type="persistent_config_state">
64+
<requiredEntity type="persistent_options_enabled">RestorePersistentOptionsEnabled</requiredEntity>
65+
<requiredEntity type="persistent_options_lifetime">RestorePersistentOptionsLifetime</requiredEntity>
66+
<requiredEntity type="persistent_options_remember_enabled">RestorePersistentOptionsRememberEnabled</requiredEntity>
67+
<requiredEntity type="persistent_options_remember_default">RestorePersistentOptionsRememberDefault</requiredEntity>
68+
<requiredEntity type="persistent_options_logout_clear">RestorePersistentOptionsLogout</requiredEntity>
69+
<requiredEntity type="persistent_options_shopping_cart">RestorePersistentOptionsShoppingCart</requiredEntity>
70+
</entity>
71+
72+
<entity name="RestorePersistentOptionsEnabled" type="persistent_options_enabled">
73+
<requiredEntity type="persistent_options_use_system_value">PersistentOptionsUseInherit</requiredEntity>
74+
</entity>
75+
<entity name="RestorePersistentOptionsLogout" type="persistent_options_logout_clear">
76+
<requiredEntity type="persistent_options_use_system_value">PersistentOptionsUseInherit</requiredEntity>
77+
</entity>
78+
<entity name="RestorePersistentOptionsLifetime" type="persistent_options_lifetime">
79+
<requiredEntity type="persistent_options_use_system_value">PersistentOptionsUseInherit</requiredEntity>
80+
</entity>
81+
<entity name="RestorePersistentOptionsRememberEnabled" type="persistent_options_remember_enabled">
82+
<requiredEntity type="persistent_options_use_system_value">PersistentOptionsUseInherit</requiredEntity>
83+
</entity>
84+
<entity name="RestorePersistentOptionsRememberDefault" type="persistent_options_remember_default">
85+
<requiredEntity type="persistent_options_use_system_value">PersistentOptionsUseInherit</requiredEntity>
86+
</entity>
87+
<entity name="RestorePersistentOptionsShoppingCart" type="persistent_options_shopping_cart">
88+
<requiredEntity type="persistent_options_use_system_value">PersistentOptionsUseInherit</requiredEntity>
89+
</entity>
90+
91+
<entity name="PersistentOptionsUseInherit" type="persistent_options_use_system_value">
92+
<data key="value">1</data>
93+
</entity>
3794
</entities>

app/code/Magento/Persistent/Test/Mftf/Metadata/persistent_config-meta.xml

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,45 @@
77
-->
88

99
<operations xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:mftf:DataGenerator/etc/dataOperation.xsd">
10-
<operation name="CreatePersistentConfigState" dataType="persistent_config_state" type="create" auth="adminFormKey" url="/admin/system_config/save/section/persistent/" method="POST">
10+
<operation name="CreatePersistentConfigState" dataType="persistent_config_state" type="create" auth="adminFormKey" url="/admin/system_config/save/section/persistent/" method="POST" successRegex="/messages-message-success/">
1111
<object key="groups" dataType="persistent_config_state">
1212
<object key="options" dataType="persistent_config_state">
1313
<object key="fields" dataType="persistent_config_state">
1414
<object key="enabled" dataType="persistent_options_enabled">
1515
<field key="value">string</field>
16+
<object key="inherit" dataType="persistent_options_use_system_value">
17+
<field key="value">integer</field>
18+
</object>
1619
</object>
1720
<object key="logout_clear" dataType="persistent_options_logout_clear">
1821
<field key="value">string</field>
22+
<object key="inherit" dataType="persistent_options_use_system_value">
23+
<field key="value">integer</field>
24+
</object>
25+
</object>
26+
<object key="lifetime" dataType="persistent_options_lifetime">
27+
<field key="value">string</field>
28+
<object key="inherit" dataType="persistent_options_use_system_value">
29+
<field key="value">integer</field>
30+
</object>
31+
</object>
32+
<object key="remember_enabled" dataType="persistent_options_remember_enabled">
33+
<field key="value">string</field>
34+
<object key="inherit" dataType="persistent_options_use_system_value">
35+
<field key="value">integer</field>
36+
</object>
37+
</object>
38+
<object key="remember_default" dataType="persistent_options_remember_default">
39+
<field key="value">string</field>
40+
<object key="inherit" dataType="persistent_options_use_system_value">
41+
<field key="value">integer</field>
42+
</object>
43+
</object>
44+
<object key="shopping_cart" dataType="persistent_options_shopping_cart">
45+
<field key="value">string</field>
46+
<object key="inherit" dataType="persistent_options_use_system_value">
47+
<field key="value">integer</field>
48+
</object>
1949
</object>
2050
</object>
2151
</object>

0 commit comments

Comments
 (0)