Skip to content

Commit 83665d7

Browse files
authored
Merge pull request #9849 from magento-gl/commpr-10131-1006
[Bluetooth] Community Pull Requests delivery pull request dashboard PRs - June
2 parents 597e991 + 1101572 commit 83665d7

15 files changed

+251
-8
lines changed

app/code/Magento/Backend/view/adminhtml/web/js/validate-store.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,12 +47,19 @@ define([
4747
_saveHandler: function (form) {
4848
var formData = {},
4949
requestData = {},
50+
counts = {},
5051
options = $.data(form, 'validator').settings;
5152

5253
if ($(form).validation('isValid')) {
5354
$.each($(form).serializeArray(), function () {
55+
counts[this.name] = (counts[this.name] || 0) + 1;
56+
57+
if (formData[this.name]) {
58+
this.name = this.name.replace(new RegExp(/\[\]$/g), '[' + (counts[this.name] - 1) + ']');
59+
}
5460
formData[this.name] = this.value || '';
5561
});
62+
5663
requestData = {
5764
action: $(form).attr('action'),
5865
data: formData
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
/**
4+
* Copyright 2021 Adobe
5+
* All Rights Reserved.
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="AssertCaptchaVisibleOnEmailToFriendFormActionGroup">
12+
<waitForElementVisible selector="{{StorefrontEmailToFriendSection.captchaField}}" stepKey="waitToSeeCaptchaField"/>
13+
<waitForElementVisible selector="{{StorefrontEmailToFriendSection.captchaImg}}" stepKey="waitToSeeCaptchaImage"/>
14+
<waitForElementVisible selector="{{StorefrontEmailToFriendSection.captchaReload}}" stepKey="waitToSeeCaptchaReloadButton"/>
15+
<reloadPage stepKey="refreshPage"/>
16+
<waitForPageLoad stepKey="waitForPageReloaded"/>
17+
<waitForElementVisible selector="{{StorefrontEmailToFriendSection.captchaField}}" stepKey="waitToSeeCaptchaFieldAfterPageReload"/>
18+
<waitForElementVisible selector="{{StorefrontEmailToFriendSection.captchaImg}}" stepKey="waitToSeeCaptchaImageAfterPageReload"/>
19+
<waitForElementVisible selector="{{StorefrontEmailToFriendSection.captchaReload}}" stepKey="waitToSeeCaptchaReloadButtonAfterPageReload"/>
20+
</actionGroup>
21+
</actionGroups>
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
/**
4+
* Copyright 2021 Adobe
5+
* All Rights Reserved.
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="StorefrontFillCaptchaOnEmailToFriendFormActionGroup">
12+
<arguments>
13+
<argument name="captcha" type="string"/>
14+
</arguments>
15+
<fillField userInput="{{captcha}}" selector="{{StorefrontEmailToFriendSection.captchaField}}" stepKey="fillCaptchaField"/>
16+
</actionGroup>
17+
</actionGroups>

app/code/Magento/Captcha/Test/Mftf/Data/CaptchaConfigData.xml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -163,6 +163,12 @@
163163
<data key="label">ABCDEFGHJKMnpqrstuvwxyz23456789</data>
164164
<data key="value">ABCDEFGHJKMnpqrstuvwxyz23456789</data>
165165
</entity>
166+
<entity name="StorefrontCaptchaOnEmailToFriendFormConfigData">
167+
<data key="path">customer/captcha/forms</data>
168+
<data key="scope_id">0</data>
169+
<data key="label">Send To Friend Form</data>
170+
<data key="value">product_sendtofriend_form</data>
171+
</entity>
166172
<entity name="AdminCaptchaForgotPasswordFormConfigData">
167173
<!-- Magento default value -->
168174
<data key="path">admin/captcha/forms</data>
Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
/**
4+
* Copyright 2021 Adobe
5+
* All Rights Reserved.
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="StorefrontCaptchaOnEmailToFriendFormTest">
12+
<annotations>
13+
<features value="Captcha"/>
14+
<stories value="Sending email about products in store with enabled captcha"/>
15+
<title value="Captcha on email to friend form"/>
16+
<description value="Customer should be able send email to friend about product with enabled captcha"/>
17+
<severity value="MINOR"/>
18+
<group value="captcha"/>
19+
</annotations>
20+
<before>
21+
<createData entity="SimpleSubCategory" stepKey="createCategory"/>
22+
<createData entity="SimpleProduct" stepKey="createProduct">
23+
<requiredEntity createDataKey="createCategory"/>
24+
</createData>
25+
<createData entity="Simple_US_Customer" stepKey="createCustomer"/>
26+
<magentoCLI command="config:set {{StorefrontCustomerCaptchaLength3ConfigData.path}} {{StorefrontCustomerCaptchaLength3ConfigData.value}}" stepKey="setCaptchaLength"/>
27+
<magentoCLI command="config:set {{StorefrontCustomerCaptchaSymbols1ConfigData.path}} {{StorefrontCustomerCaptchaSymbols1ConfigData.value}}" stepKey="setCaptchaSymbols"/>
28+
<magentoCLI command="config:set {{StorefrontCaptchaOnEmailToFriendFormConfigData.path}} {{StorefrontCaptchaOnEmailToFriendFormConfigData.value}}" stepKey="enableEmailToFriendCaptcha"/>
29+
<magentoCLI command="config:set {{StorefrontCustomerCaptchaModeAlwaysConfigData.path}} {{StorefrontCustomerCaptchaModeAlwaysConfigData.value}}" stepKey="setCaptchaAlwaysVisible"/>
30+
<magentoCLI command="config:set {{EnableCatalogEmailToFriendOptionConfigData.path}} {{EnableCatalogEmailToFriendOptionConfigData.value}}" stepKey="enableSendToFriend"/>
31+
<actionGroup ref="CliCacheCleanActionGroup" stepKey="cleanInvalidatedCaches">
32+
<argument name="tags" value="config full_page"/>
33+
</actionGroup>
34+
</before>
35+
<after>
36+
<deleteData createDataKey="createCategory" stepKey="deleteCategory"/>
37+
<deleteData createDataKey="createProduct" stepKey="deleteProduct"/>
38+
<actionGroup ref="StorefrontCustomerLogoutActionGroup" stepKey="logoutCustomer"/>
39+
<deleteData createDataKey="createCustomer" stepKey="deleteCustomer"/>
40+
<magentoCLI command="config:set {{StorefrontCustomerCaptchaDefaultLengthConfigData.path}} {{StorefrontCustomerCaptchaDefaultLengthConfigData.value}}" stepKey="setDefaultCaptchaLength"/>
41+
<magentoCLI command="config:set {{StorefrontCustomerCaptchaDefaultSymbolsConfigData.path}} {{StorefrontCustomerCaptchaDefaultSymbolsConfigData.value}}" stepKey="setDefaultCaptchaSymbols"/>
42+
<magentoCLI command="config:set {{StorefrontCustomerCaptchaModeAfterFailConfigData.path}} {{StorefrontCustomerCaptchaModeAfterFailConfigData.value}}" stepKey="setCaptchaDefaultVisibility"/>
43+
<magentoCLI command="config:set {{StorefrontCaptchaOnCustomerLoginConfigData.path}} {{StorefrontCaptchaOnCustomerLoginConfigData.value}},{{StorefrontCaptchaOnCustomerForgotPasswordConfigData.value}}" stepKey="enableCaptchaOnDefaultForms"/>
44+
<magentoCLI command="config:set {{DisableCatalogEmailToFriendOptionConfigData.path}} {{DisableCatalogEmailToFriendOptionConfigData.value}}" stepKey="disableSendToFriend"/>
45+
<actionGroup ref="CliCacheCleanActionGroup" stepKey="cleanInvalidatedCaches">
46+
<argument name="tags" value="config full_page"/>
47+
</actionGroup>
48+
</after>
49+
50+
<actionGroup ref="LoginToStorefrontActionGroup" stepKey="loginToStorefrontAccount">
51+
<argument name="Customer" value="$createCustomer$"/>
52+
</actionGroup>
53+
<actionGroup ref="OpenProductFromCategoryPageActionGroup" stepKey="openProductFromCategory">
54+
<argument name="category" value="$createCategory$"/>
55+
<argument name="product" value="$createProduct$"/>
56+
</actionGroup>
57+
<actionGroup ref="StorefrontClickEmailToFriendButtonOnProductPageActionGroup" stepKey="clickEmailButton"/>
58+
<actionGroup ref="AssertCaptchaVisibleOnEmailToFriendFormActionGroup" stepKey="seeCaptchaOnEmailToFriendForm"/>
59+
<actionGroup ref="StorefrontFillFieldsOnEmailToFriendFormActionGroup" stepKey="fillFieldsOnForm">
60+
<argument name="senderName" value="{{Simple_US_Customer.firstname}}"/>
61+
<argument name="senderEmail" value="{{Simple_US_Customer.email}}"/>
62+
<argument name="message" value="{{EmailToFriendValidValues.shareInfo_message}}"/>
63+
<argument name="recipientName" value="{{EmailToFriendValidValues.recipient_name}}"/>
64+
<argument name="recipientEmail" value="{{EmailToFriendValidValues.shareInfo_email}}"/>
65+
</actionGroup>
66+
<actionGroup ref="StorefrontFillCaptchaOnEmailToFriendFormActionGroup" stepKey="fillCaptchaFieldWithIncorrectValues">
67+
<argument name="captcha" value="{{WrongCaptcha.value}}"/>
68+
</actionGroup>
69+
<actionGroup ref="StorefrontClickSendEmailButtonOnEmailToFriendFormActionGroup" stepKey="submitEmailToFriendForm"/>
70+
<actionGroup ref="AssertMessageCustomerChangeAccountInfoActionGroup" stepKey="assertErrorMessage">
71+
<argument name="message" value="Incorrect CAPTCHA"/>
72+
<argument name="messageType" value="error"/>
73+
</actionGroup>
74+
<actionGroup ref="StorefrontFillFieldsOnEmailToFriendFormActionGroup" stepKey="fillFieldsOnEmailToFriendForm">
75+
<argument name="senderName" value="{{Simple_US_Customer.firstname}}"/>
76+
<argument name="senderEmail" value="{{Simple_US_Customer.email}}"/>
77+
<argument name="message" value="{{EmailToFriendValidValues.shareInfo_message}}"/>
78+
<argument name="recipientName" value="{{EmailToFriendValidValues.recipient_name}}"/>
79+
<argument name="recipientEmail" value="{{EmailToFriendValidValues.shareInfo_email}}"/>
80+
</actionGroup>
81+
<actionGroup ref="StorefrontFillCaptchaOnEmailToFriendFormActionGroup" stepKey="fillCaptchaFieldWithCorrectValues">
82+
<argument name="captcha" value="{{PreconfiguredCaptcha.value}}"/>
83+
</actionGroup>
84+
<actionGroup ref="StorefrontClickSendEmailButtonOnEmailToFriendFormActionGroup" stepKey="submitEmailToFriendFormWithValidValues"/>
85+
<actionGroup ref="AssertMessageCustomerChangeAccountInfoActionGroup" stepKey="assertSuccessMessage">
86+
<argument name="message" value="The link to a friend was sent."/>
87+
</actionGroup>
88+
</test>
89+
</tests>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
/**
4+
* Copyright 2021 Adobe
5+
* All Rights Reserved.
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="StorefrontClickEmailToFriendButtonOnProductPageActionGroup">
12+
<click selector="{{StorefrontProductPageSection.email}}" stepKey="clickEmailToFriendButton"/>
13+
</actionGroup>
14+
</actionGroups>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
/**
4+
* Copyright 2021 Adobe
5+
* All Rights Reserved.
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="StorefrontClickSendEmailButtonOnEmailToFriendFormActionGroup">
12+
<click selector="{{StorefrontEmailToFriendSection.sendEmail}}" stepKey="sendEmail"/>
13+
<waitForPageLoad stepKey="waitForPageLoad"/>
14+
</actionGroup>
15+
</actionGroups>
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
/**
4+
* Copyright 2021 Adobe
5+
* All Rights Reserved.
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="StorefrontFillFieldsOnEmailToFriendFormActionGroup">
12+
<arguments>
13+
<argument name="senderName" type="string"/>
14+
<argument name="senderEmail" type="string"/>
15+
<argument name="message" type="string"/>
16+
<argument name="recipientName" type="string"/>
17+
<argument name="recipientEmail" type="string"/>
18+
</arguments>
19+
20+
<fillField userInput="{{senderName}}" selector="{{StorefrontEmailToFriendSection.name}}" stepKey="fillSenderName"/>
21+
<fillField userInput="{{senderEmail}}" selector="{{StorefrontEmailToFriendSection.email}}" stepKey="fillSenderEmail"/>
22+
<fillField userInput="{{message}}" selector="{{StorefrontEmailToFriendSection.message}}" stepKey="fillMessageField"/>
23+
<fillField userInput="{{recipientName}}" selector="{{StorefrontEmailToFriendSection.recipientName}}" stepKey="fillRecipientName"/>
24+
<fillField userInput="{{recipientEmail}}" selector="{{StorefrontEmailToFriendSection.recipientEmail}}" stepKey="fillRecipientEmail"/>
25+
</actionGroup>
26+
</actionGroups>

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

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<!--
33
/**
4-
* Copyright 2020 Adobe
4+
* Copyright 2017 Adobe
55
* All Rights Reserved.
66
*/
77
-->
@@ -16,6 +16,14 @@
1616
<data key="path">catalog/layered_navigation/display_category</data>
1717
<data key="value">0</data>
1818
</entity>
19+
<entity name="EnableCatalogEmailToFriendOptionConfigData">
20+
<data key="path">sendfriend/email/enabled</data>
21+
<data key="value">1</data>
22+
</entity>
23+
<entity name="DisableCatalogEmailToFriendOptionConfigData">
24+
<data key="path">sendfriend/email/enabled</data>
25+
<data key="value">0</data>
26+
</entity>
1927
<entity name="AllowGuestsToWriteReviewsConfigData">
2028
<!-- Magento Default Value -->
2129
<data key="path">catalog/review/allow_guest</data>
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
/**
4+
* Copyright 2021 Adobe
5+
* All Rights Reserved.
6+
*/
7+
-->
8+
9+
<entities xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:mftf:DataGenerator/etc/dataProfileSchema.xsd">
10+
<entity name="EmailToFriendValidValues" type="emailToFFriend">
11+
<data key="shareInfo_message">Sharing message.</data>
12+
<data key="shareInfo_email">JohnDoe123456789@example.com</data>
13+
<data key="recipient_name">John</data>
14+
</entity>
15+
</entities>

0 commit comments

Comments
 (0)