Skip to content

Commit d1bf3a3

Browse files
🔃 [Magento Community Engineering] Community Contributions - 2.4-develop
Accepted Community Pull Requests: - #29639: #1387: "Uncaught TypeError: Cannot read property 'complete' of undefined" appears in dev console if save Previewed image as a new View and open this View on another page (by @joweecaquicla) - #29632: #1760: Media Gallery Page opened successfully if "Enhanced Media Gallery" disabled (by @jmonteros422) - #26081: Fix #26080 (by @korostii) - #29269: Issue 25595 - multiple address virtual product error at checkout fixe… (by @ralbin) - #27696: Initialize inline translations module only when they are enabled (by @krzksz) - #29482: [MFTF] Add test coverage for AdminAnalytics module (by @Usik2203) - #29353: Fix #29194 Update tier price div visibility (by @srsathish92) - #28163: Fix #13401 - Multi-Store: "Store View" sort order values are not reflected in front-end store-switcher (by @Bartlomiejsz) - #27691: fixed condition when can show password input. Fixed logic for pulling… (by @ProkopovVitaliy) Fixed GitHub Issues: - #1760: Question: Object Manager objects' get methods return 1 (reported by @CoreyCole) has been fixed in #29632 by @jmonteros422 in 2.4-develop branch Related commits: 1. afe499d 2. 0994c44 3. 5a70b81 4. 2267021 - #26080: [2.4-develop] Cannot instantiate Magento\Framework\MessageQueue\ConfigInterface if optional module Magento_MessageQueue is disabled (reported by @korostii) has been fixed in #26081 by @korostii in 2.4-develop branch Related commits: 1. cfab782 2. 7c263e8 - #25595: Add all type of product into cart, start checkout with multiple address after giving multiple address, except download and virtual type product, remove all four type product from the cart then getting exception (reported by @Khushbu-Webkul-QA) has been fixed in #29269 by @ralbin in 2.4-develop branch Related commits: 1. 67a4be3 2. 3a1df1d 3. 603ef05 4. 78f0780 5. b566b80 6. e40b1ca 7. 090f06a 8. 54c8ebc - #29553: [Issue] Initialize inline translations module only when they are enabled (reported by @m2-assistant[bot]) has been fixed in #27696 by @krzksz in 2.4-develop branch Related commits: 1. 28d1af5 2. b842083 3. fe00511 4. d64eaf4 5. 1861c47 6. d7305bc 7. 52432e5 8. d3c9a49 9. 52cb062 10. d2883ed 11. 217e993 12. 703add1 13. cbc6cc0 - #29500: [Issue] [MFTF] Add test coverage for AdminAnalytics module (reported by @m2-assistant[bot]) has been fixed in #29482 by @Usik2203 in 2.4-develop branch Related commits: 1. c9f9506 2. db43cb8 3. e713317 4. f2d1a0c 5. 3f2df55 6. 80efa90 7. 9b69f75 - #29194: CSS for tier prices block still visible when there are no tier prices (reported by @posidonius) has been fixed in #29353 by @srsathish92 in 2.4-develop branch Related commits: 1. 3d7298e - #13401: Multi-Store: "Store View" sort order values are not reflected in the admin or front-end store-switcher (reported by @duffner) has been fixed in #28163 by @Bartlomiejsz in 2.4-develop branch Related commits: 1. 85b6d05 2. 47bc47b 3. e87199e 4. 06a5ac4 5. a78ddde - #26903: Guest visitor e-mail in checkout kicks off password field visibility (reported by @speedupmate) has been fixed in #27691 by @ProkopovVitaliy in 2.4-develop branch Related commits: 1. a9ca0f6 2. fc1a6c5 3. c412681 4. 42803c8
2 parents 1ce8bcb + 633337a commit d1bf3a3

File tree

33 files changed

+630
-107
lines changed

33 files changed

+630
-107
lines changed
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
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="AdminCheckAnalyticsTrackingTest">
12+
<annotations>
13+
<stories value="AdminAnalytics Check Tracking."/>
14+
<title value="AdminAnalytics Check Tracking."/>
15+
<description value="AdminAnalytics Check Tracking."/>
16+
<severity value="MINOR"/>
17+
<testCaseId value="MC-36869"/>
18+
</annotations>
19+
<before>
20+
<actionGroup ref="AdminLoginActionGroup" stepKey="LoginAsAdmin"/>
21+
<magentoCLI command="config:set admin/usage/enabled 1" stepKey="enableAdminUsageTracking"/>
22+
<actionGroup ref="CliCacheCleanActionGroup" stepKey="cleanInvalidatedCaches">
23+
<argument name="tags" value="config full_page"/>
24+
</actionGroup>
25+
<reloadPage stepKey="pageReload"/>
26+
</before>
27+
<after>
28+
<magentoCLI command="config:set admin/usage/enabled 0" stepKey="disableAdminUsageTracking"/>
29+
<actionGroup ref="AdminLogoutActionGroup" stepKey="logout"/>
30+
</after>
31+
32+
<waitForPageLoad stepKey="waitForPageReloaded"/>
33+
<seeInPageSource html="var adminAnalyticsMetadata =" stepKey="seeInPageSource"/>
34+
</test>
35+
</tests>
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
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="AssertAdminPageIs404ActionGroup">
12+
<annotations>
13+
<description>Validates that the '404 Error' message is present in the current Admin Page Header.</description>
14+
</annotations>
15+
16+
<see userInput="404 Error" selector="{{AdminHeaderSection.pageHeading}}" stepKey="see404PageHeading"/>
17+
</actionGroup>
18+
</actionGroups>

app/code/Magento/Catalog/Test/Mftf/Section/AdminCategorySidebarTreeSection.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
<element name="collapseAll" type="button" selector=".tree-actions a:first-child"/>
1313
<element name="expandAll" type="button" selector=".tree-actions a:last-child"/>
1414
<element name="categoryHighlighted" type="text" selector="//div[@id='store.menu']//span[contains(text(),'{{name}}')]/ancestor::li" parameterized="true" timeout="30"/>
15-
<element name="categoryNotHighlighted" type="text" selector="ul[id=\'ui-id-2\'] li[class~=\'active\']" timeout="30"/>
15+
<element name="categoryNotHighlighted" type="text" selector="[id=\'store.menu\'] ul li.active" timeout="30"/>
1616
<element name="categoryTreeRoot" type="text" selector="div.x-tree-root-node>li.x-tree-node:first-of-type>div.x-tree-node-el:first-of-type" timeout="30"/>
1717
<element name="categoryInTree" type="text" selector="//a/span[contains(text(), '{{name}}')]" parameterized="true" timeout="30"/>
1818
<element name="categoryInTreeUnderRoot" type="text" selector="//li/ul/li[@class='x-tree-node']/div/a/span[contains(text(), '{{name}}')]" parameterized="true"/>

app/code/Magento/Catalog/Test/Mftf/Section/StorefrontFooterSection.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Page/etc/SectionObject.xsd">
1010
<section name="StorefrontFooterSection">
1111
<element name="switchStoreButton" type="button" selector="#switcher-store-trigger"/>
12+
<element name="storeViewOptionNumber" type="button" selector="//div[@class='actions dropdown options switcher-options active']//ul//li[{{var1}}]//a" parameterized="true"/>
1213
<element name="storeLink" type="button" selector="//ul[@class='dropdown switcher-dropdown']//a[contains(text(),'{{var1}}')]" parameterized="true" timeout="30"/>
1314
</section>
1415
</sections>
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="AssertStorefrontVisiblePasswordFieldForUnregisteredEmailOnCheckoutActionGroup">
12+
<annotations>
13+
<description>Checks if visible password field for unregistered email on checkout page</description>
14+
</annotations>
15+
16+
<waitForPageLoad stepKey="waitForCheckoutPageLoaded"/>
17+
<dontSeeElement selector="{{StorefrontCheckoutCheckoutCustomerLoginSection.password}}" stepKey="checkIfPasswordVisible"/>
18+
</actionGroup>
19+
</actionGroups>
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
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="StorefrontAssertCheckoutErrorMessageActionGroup">
12+
<arguments>
13+
<argument name="message" type="string"/>
14+
</arguments>
15+
16+
<waitForElementVisible selector="{{CheckoutCartMessageSection.errorMessageText(message)}}" stepKey="assertErrorMessage"/>
17+
</actionGroup>
18+
</actionGroups>

app/code/Magento/Checkout/Test/Mftf/Section/CheckoutCartMessageSection.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,5 +12,6 @@
1212
<element name="successMessage" type="text" selector=".message.message-success.success>div" />
1313
<element name="errorMessage" type="text" selector=".message-error.error.message>div" />
1414
<element name="emptyCartMessage" type="text" selector=".cart-empty>p"/>
15+
<element name="errorMessageText" type="text" selector="//div[contains(@class, 'message-error')]/div[text()='{{var}}']" parameterized="true"/>
1516
</section>
1617
</sections>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
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="StorefrontVisiblePasswordFieldForUnregisteredEmailOnCheckoutTest">
12+
<annotations>
13+
<features value="Checkout"/>
14+
<stories value="Visible password field for unregistered e-mail on Checkout"/>
15+
<title value="Visibility password field for unregistered e-mail on Checkout process"/>
16+
<description value="Guest should not be able to see password field if entered unregistered email"/>
17+
<severity value="MINOR"/>
18+
<group value="checkout"/>
19+
</annotations>
20+
<before>
21+
<createData entity="SimpleTwo" stepKey="simpleProduct"/>
22+
</before>
23+
<after>
24+
<deleteData createDataKey="simpleProduct" stepKey="deleteProduct"/>
25+
</after>
26+
<actionGroup ref="StorefrontOpenProductPageActionGroup" stepKey="openProductStorefront">
27+
<argument name="productUrl" value="$$simpleProduct.custom_attributes[url_key]$$"/>
28+
</actionGroup>
29+
<actionGroup ref="StorefrontClickAddToCartOnProductPageActionGroup" stepKey="addToCartFromStorefrontProductPage"/>
30+
<actionGroup ref="StorefrontOpenCheckoutPageActionGroup" stepKey="openCheckoutPage"/>
31+
<actionGroup ref="AssertStorefrontEmailTooltipContentOnCheckoutActionGroup" stepKey="assertEmailTooltipContent"/>
32+
<actionGroup ref="AssertStorefrontEmailNoteMessageOnCheckoutActionGroup" stepKey="assertEmailNoteMessage"/>
33+
<actionGroup ref="StorefrontFillEmailFieldOnCheckoutActionGroup" stepKey="fillUnregisteredEmailFirstAttempt">
34+
<argument name="email" value="unregistered@email.test"/>
35+
</actionGroup>
36+
<actionGroup ref="AssertStorefrontVisiblePasswordFieldForUnregisteredEmailOnCheckoutActionGroup" stepKey="checkIfPasswordVisibleAfterFieldFilling"/>
37+
<actionGroup ref="StorefrontOpenCheckoutPageActionGroup" stepKey="reloadCheckoutPage" />
38+
<actionGroup ref="AssertStorefrontVisiblePasswordFieldForUnregisteredEmailOnCheckoutActionGroup"
39+
stepKey="checkIfPasswordVisibleAfterPageReload"/>
40+
</test>
41+
</tests>

app/code/Magento/Checkout/view/frontend/web/js/view/form/element/email.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,7 @@ define([
113113

114114
$.when(this.isEmailCheckComplete).done(function () {
115115
this.isPasswordVisible(false);
116+
checkoutData.setCheckedEmailValue('');
116117
}.bind(this)).fail(function () {
117118
this.isPasswordVisible(true);
118119
checkoutData.setCheckedEmailValue(this.email());
@@ -192,6 +193,10 @@ define([
192193
* @returns {Boolean} - initial visibility state.
193194
*/
194195
resolveInitialPasswordVisibility: function () {
196+
if (checkoutData.getInputFieldEmailValue() !== '' && checkoutData.getCheckedEmailValue() !== '') {
197+
return true;
198+
}
199+
195200
if (checkoutData.getInputFieldEmailValue() !== '') {
196201
return checkoutData.getInputFieldEmailValue() === checkoutData.getCheckedEmailValue();
197202
}

app/code/Magento/ConfigurableProduct/Test/Mftf/Section/StorefrontProductInfoMainSection.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
<element name="selectableProductOptions" type="select" selector="#attribute{{var1}} option:not([disabled])" parameterized="true"/>
1414
<element name="productAttributeTitle1" type="text" selector="#product-options-wrapper div[tabindex='0'] label"/>
1515
<element name="productPrice" type="text" selector="div.price-box.price-final_price"/>
16+
<element name="tierPriceBlock" type="block" selector="div[data-role='tier-price-block']"/>
1617
<element name="productAttributeOptions1" type="select" selector="#product-options-wrapper div[tabindex='0'] option"/>
1718
<element name="productAttributeOptionsSelectButton" type="select" selector="#product-options-wrapper .super-attribute-select"/>
1819
<element name="productAttributeOptionsError" type="text" selector="//div[@class='mage-error']"/>

0 commit comments

Comments
 (0)