Skip to content

Commit e17987d

Browse files
Merge pull request #352 from magento-cia/cia-2.4.8-beta1-develop-2.4-develop-sync-08152024
Cia 2.4.8 beta1 develop 2.4 develop sync 08152024
2 parents 0f2c963 + d99fb20 commit e17987d

File tree

48 files changed

+626
-123
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+626
-123
lines changed

app/code/Magento/PageBuilder/Block/GoogleMapsApi.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
class GoogleMapsApi extends \Magento\Framework\View\Element\Template
1818
{
1919
public const GOOGLE_MAPS_API_KEY_PATH = 'cms/pagebuilder/google_maps_api_key';
20-
public const GOOGLE_MAPS_LIBRARY_URL = 'https://maps.googleapis.com/maps/api/js?v=3.53&key=%s';
20+
public const GOOGLE_MAPS_LIBRARY_URL = 'https://maps.googleapis.com/maps/api/js?v=3.56&key=%s';
2121
public const GOOGLE_MAPS_STYLE_PATH = 'cms/pagebuilder/google_maps_style';
2222

2323
/**

app/code/Magento/PageBuilder/Model/Stage/Renderer/Block.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -68,9 +68,9 @@ public function render(array $params): array
6868
];
6969

7070
$contentTypes = $this->config->getContentTypes();
71-
$backendBlockClassName = isset($contentTypes[$params['role']]['backend_block'])
71+
$backendBlockClassName = isset($params['role']) && isset($contentTypes[$params['role']]['backend_block'])
7272
? $contentTypes[$params['role']]['backend_block'] : false;
73-
$backendBlockTemplate = isset($contentTypes[$params['role']]['backend_template'])
73+
$backendBlockTemplate = isset($params['role']) && isset($contentTypes[$params['role']]['backend_template'])
7474
? $contentTypes[$params['role']]['backend_template'] : false;
7575

7676
if ($backendBlockTemplate) {

app/code/Magento/PageBuilder/Test/Mftf/ActionGroup/BackgroundConfigurationActionGroup/ValidateVideoBackgroundWithOnlyVideoUrlActionGroup.xml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,8 @@
2828
<actualResult type="variable">grabBackgroundColorValue</actualResult>
2929
</assertEquals>
3030
<wait time="5" stepKey="waitToPreventVideoFlakiness"/>
31-
<waitForElementVisible selector="{{section.videoBackgroundVideoElement(index)}}" stepKey="waitForVideoVisible"/>
31+
<scrollToTopOfPage stepKey="scrollToTopToAvoidFlakiness" />
32+
<waitForElement selector="{{section.videoBackgroundVideoElement(index)}}" stepKey="waitForVideoVisible"/>
3233
<waitForElement selector="{{section.videoBackgroundVideoUrl(index, videoUrl.renderedValue)}}" stepKey="waitForVideoUrl"/>
3334
<grabAttributeFrom selector="{{section.videoBackgroundJarallaxContainer(index)}}" userInput="style" stepKey="jarallaxStyle"/>
3435
<assertStringContainsString stepKey="assertHeight">

app/code/Magento/PageBuilder/Test/Mftf/ActionGroup/EditFormActionGroup/validateSlideOutPanelFieldIsNotRequiredWithUploaderIdActionGroup.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
<arguments>
1212
<argument name="property"/>
1313
</arguments>
14-
<waitForElementVisible time="2" selector="{{EditPanelForm.panelFieldControlWithUploaderId(property.section, property.fieldName)}}" stepKey="waitForPropertyElement"/>
14+
<waitForElementVisible time="2" selector="{{EditPanelForm.panelFieldNameWithUploaderId(property.section, property.fieldName)}}" stepKey="waitForPropertyElement"/>
1515
<dontSeeElement selector="{{EditPanelForm.panelFieldRequired(property.section, property.fieldName)}}" stepKey="seePropertyIsNotARequiredField"/>
1616
</actionGroup>
1717
</actionGroups>

app/code/Magento/PageBuilder/Test/Mftf/Data/ImageData.xml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,16 @@
6464
<data key="extension">jpg</data>
6565
<data key="path">wysiwyg</data>
6666
</entity>
67+
<entity name="PageBuilderImagePropertyJpgCopyOtherFolder" type="pagebuilder_image_property">
68+
<data key="name">Image</data>
69+
<data key="section">general</data>
70+
<data key="fieldName">image</data>
71+
<data key="value">magento.jpg</data>
72+
<data key="file">duplicatesamename/magento.jpg</data>
73+
<data key="fileName">magento</data>
74+
<data key="extension">jpg</data>
75+
<data key="path">wysiwyg</data>
76+
</entity>
6777
<entity name="PageBuilderBackgroundImagePropertyJpg" type="pagebuilder_image_property">
6878
<data key="name">Image</data>
6979
<data key="section">background</data>

app/code/Magento/PageBuilder/Test/Mftf/Section/PageBuilderEditFormSection/EditPanelFormSection.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
<element name="panelSectionGenericError" type="text" selector="div.message.message-error.error"/>
2222
<element name="panelFieldControl" type="input" selector="//aside//div[@data-index=&quot;{{arg1}}&quot;]/descendant::*[@name=&quot;{{arg2}}&quot;]" parameterized="true"/>
2323
<element name="panelFieldControlWithUploaderId" type="input" selector="//aside//div[@data-index=&quot;{{arg1}}&quot;]/descendant::*[@upload-area-id=&quot;{{arg2}}&quot;]//div[contains(@class,'uppy-Root')]//input[contains(@class,'uppy-Dashboard-input')]" parameterized="true"/>
24+
<element name="panelFieldNameWithUploaderId" type="input" selector="//aside//div[@data-index=&quot;{{propertySection}}&quot;]/descendant::*[@upload-area-id=&quot;{{propertyField}}&quot;]" parameterized="true"/>
2425
<element name="panelFieldControlCheckbox" type="input" selector="//input[@type='checkbox' and @name='{{arg1}}']" parameterized="true"/>
2526
<element name="panelFieldControlCheckboxState" type="input" selector="//input[@type='checkbox' and @name='{{arg1}}' and @value='{{arg2}}']" parameterized="true"/>
2627
<element name="panelFieldControlSwitch" type="input" selector="//*[@name='{{arg1}}']/parent::*/label" parameterized="true"/>
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+
<tests xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
9+
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/testSchema.xsd">
10+
<test name="AdminAddRecentlyViewedProductWidgetToSeeProductPriceTest">
11+
<before>
12+
<magentoCLI command="config:set cms/pagebuilder/enabled 0" stepKey="disablePageBuilder" after="enableTinyMCE"/>
13+
</before>
14+
<after>
15+
<magentoCLI command="config:set cms/pagebuilder/enabled 1" stepKey="enablePageBuilder" after="disableWYSIWYG"/>
16+
</after>
17+
</test>
18+
</tests>

app/code/Magento/PageBuilder/Test/Mftf/Test/AdminPageBuilderCommonTest/AdminPageBuilderPageButtonLinkTest.xml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -80,8 +80,10 @@
8080
<waitForElementVisible selector="{{PageBuilderLinkAttributeAdmin.LinkItemSelected($createCMSPageA.title$)}}" stepKey="seeSearchResultHighlighted"/>
8181

8282
<!--Select another page from dropdown-->
83-
<scrollTo selector="{{PageBuilderLinkAttributeAdmin.LinkItemSelected($createCMSPageA.title$)}}" stepKey="scrollToLinks"/>
84-
<waitForElementClickable selector="{{PageBuilderLinkAttributeAdmin.LinkItemSelected($createCMSPageA.title$)}}" stepKey="waitForCMSPageBClickable"/>
83+
<clearField selector="{{PageBuilderLinkAttributeAdmin.LinkSearch}}" stepKey="clearLinkSearchField"/>
84+
<fillField selector="{{PageBuilderLinkAttributeAdmin.LinkSearch}}" userInput="{{$createCMSPageB.title$}}" stepKey="fillCreateCMSPageBInSearchField"/>
85+
<scrollTo selector="{{PageBuilderLinkAttributeAdmin.SearchResult($createCMSPageB.title$)}}" stepKey="scrollToLinks"/>
86+
<waitForElementClickable selector="{{PageBuilderLinkAttributeAdmin.SearchResult($createCMSPageB.title$)}}" stepKey="waitForCMSPageBClickable"/>
8587
<click selector="{{PageBuilderLinkAttributeAdmin.SearchResult($createCMSPageB.title$)}}" stepKey="clickCMSPageBOnSearchResult"/>
8688
<grabTextFrom selector="{{PageBuilderLinkAttributeAdmin.DropdownInput}}" stepKey="textFromDropDown2"/>
8789
<assertEquals stepKey="assertEquals2" message="pass">
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,127 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
/************************************************************************
4+
*
5+
* Copyright 2024 Adobe
6+
* All Rights Reserved.
7+
*
8+
* NOTICE: All information contained herein is, and remains
9+
* the property of Adobe and its suppliers, if any. The intellectual
10+
* and technical concepts contained herein are proprietary to Adobe
11+
* and its suppliers and are protected by all applicable intellectual
12+
* property laws, including trade secret and copyright laws.
13+
* Dissemination of this information or reproduction of this material
14+
* is strictly forbidden unless prior written permission is obtained
15+
* from Adobe.
16+
* ************************************************************************
17+
*/
18+
-->
19+
<tests xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
20+
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/testSchema.xsd">
21+
<test name="ImageAddSameNameImageIntoPageBuilderStageTest">
22+
<annotations>
23+
<features value="PageBuilder"/>
24+
<stories value="Image"/>
25+
<title value="Add Image with same name in PageBuilder for new CMS page and view on Storefront"/>
26+
<description value="Upload and select an image to/from Magento Media Gallery from the Image content type in the Page Builder Stage and then delete it and re-upload a different image with same name."/>
27+
<severity value="AVERAGE"/>
28+
<useCaseId value="ACP2E-2957"/>
29+
<testCaseId value="AC-11732"/>
30+
<group value="pagebuilder"/>
31+
<group value="pagebuilder-image"/>
32+
<group value="cloud"/>
33+
</annotations>
34+
<before>
35+
<actionGroup ref="AdminLoginActionGroup" stepKey="loginAsAdmin"/>
36+
<actionGroup ref="CliMediaGalleryEnhancedEnableActionGroup" stepKey="enableOldMediaGallery">
37+
<argument name="enabled" value="0"/>
38+
</actionGroup>
39+
<createData entity="_defaultCmsPage" stepKey="createCMSPage"/>
40+
</before>
41+
<after>
42+
<actionGroup ref="NavigateToCreatedCMSPageActionGroup" stepKey="navigateToCreatedCMSPage2">
43+
<argument name="CMSPage" value="$$createCMSPage$$"/>
44+
</actionGroup>
45+
<actionGroup ref="switchToPageBuilderStage" stepKey="switchToPageBuilderStage2"/>
46+
<actionGroup ref="goToMediaStorageFromStage" stepKey="goToMediaStorageFromStage2">
47+
<argument name="contentType" value="PageBuilderImageContentType"/>
48+
<argument name="x" value="0"/>
49+
<argument name="y" value="0"/>
50+
</actionGroup>
51+
<comment stepKey="deleteImageB" userInput="Delete image B"/>
52+
<actionGroup ref="DeleteImageFromStorageActionGroup" stepKey="DeleteImageFromStorage2">
53+
<argument name="Image" value="PageBuilderImagePropertyJpgCopyOtherFolder"/>
54+
</actionGroup>
55+
<actionGroup ref="CliMediaGalleryEnhancedEnableActionGroup" stepKey="disableOldMediaGallery">
56+
<argument name="enabled" value="0"/>
57+
</actionGroup>
58+
<deleteData createDataKey="createCMSPage" stepKey="deleteCMSPage" />
59+
<actionGroup ref="AdminLogoutActionGroup" stepKey="logout"/>
60+
</after>
61+
62+
<!-- Go to CMS Page in Admin -->
63+
<actionGroup ref="NavigateToCreatedCMSPageActionGroup" stepKey="navigateToCreatedCMSPage1">
64+
<argument name="CMSPage" value="$$createCMSPage$$"/>
65+
</actionGroup>
66+
67+
<!-- Switch to PageBuilder stage -->
68+
<actionGroup ref="switchToPageBuilderStage" stepKey="switchToPageBuilderStage"/>
69+
70+
<!-- Add a row to PageBuilder stage with image -->
71+
<actionGroup ref="dragContentTypeToStage" stepKey="dragRowToRootContainer">
72+
<argument name="contentType" value="PageBuilderRowContentType"/>
73+
<argument name="containerTargetType" value="PageBuilderRootContainerContentType"/>
74+
</actionGroup>
75+
<actionGroup ref="addPageBuilderPageTitle" stepKey="enterPageTitle">
76+
<argument name="contentType" value="PageBuilderImageContentType"/>
77+
</actionGroup>
78+
<actionGroup ref="expandPageBuilderPanelMenuSection" stepKey="expandPageBuilderPanelMenuSection">
79+
<argument name="contentType" value="PageBuilderImageContentType"/>
80+
</actionGroup>
81+
<actionGroup ref="dragContentTypeToStage" stepKey="dragBannerIntoStage">
82+
<argument name="contentType" value="PageBuilderImageContentType"/>
83+
</actionGroup>
84+
85+
<!-- Attach image A to PageBuilder stage -->
86+
<comment userInput="Attach image A to PageBuilder stage" stepKey="commentAttachImage"/>
87+
<comment userInput="Upload image from stage" stepKey="uploadImageFromStage"/>
88+
<actionGroup ref="uploadImageToContentTypeFromStage" stepKey="addImageToStage">
89+
<argument name="property" value="PageBuilderBackgroundImage_JPG"/>
90+
<argument name="section" value="ImageOnStageWithoutImageUploaded"/>
91+
</actionGroup>
92+
93+
<!-- Go to Media Storage from stage -->
94+
<comment userInput="Go to Media Storage from stage" stepKey="commentGoToMediaStorageFromStage1"/>
95+
<actionGroup ref="goToMediaStorageFromStage" stepKey="goToMediaStorageFromStage1">
96+
<argument name="contentType" value="PageBuilderImageContentType"/>
97+
<argument name="x" value="0"/>
98+
<argument name="y" value="0"/>
99+
</actionGroup>
100+
101+
<!-- Delete image A -->
102+
<comment stepKey="deleteImageA" userInput="Delete image A"/>
103+
<actionGroup ref="DeleteImageFromStorageActionGroup" stepKey="DeleteImageFromStorage1">
104+
<argument name="Image" value="PageBuilderBackgroundImage_JPG"/>
105+
</actionGroup>
106+
107+
<!-- Select image B from Media Gallery -->
108+
<comment userInput="Attach image B from Media Gallery" stepKey="attachImageToSlideOut"/>
109+
<actionGroup ref="InsertImageFromMediaGalleryFromCmsActionGroup" stepKey="insertImageFromMediaGallery">
110+
<argument name="imageFileName" value="{{PageBuilderImagePropertyJpgCopyOtherFolder.fileName}}"/>
111+
<argument name="imageFilePath" value="{{PageBuilderImagePropertyJpgCopyOtherFolder.file}}"/>
112+
</actionGroup>
113+
114+
<!-- Save Cms Page -->
115+
<actionGroup ref="exitPageBuilderFullScreen" stepKey="exitPageBuilderFullScreen"/>
116+
<actionGroup ref="SaveAndContinueEditCmsPageActionGroup" stepKey="saveAndContinueEditCmsPage"/>
117+
118+
<!-- Go to Storefront -->
119+
<actionGroup ref="StorefrontGoToCMSPageActionGroup" stepKey="goToCMSPageOnStorefrontAsGuest">
120+
<argument name="identifier" value="$createCMSPage.identifier$"/>
121+
</actionGroup>
122+
123+
<!-- Validate Storefront -->
124+
<comment userInput="Validate Storefront" stepKey="commentValidateStorefront"/>
125+
<waitForElementVisible selector="{{ImageOnStorefront.imageSourceByIndex('1', PageBuilderImagePropertyJpgCopyOtherFolder.fileName)}}" stepKey="seeImage2SourceOnStorefront"/>
126+
</test>
127+
</tests>

app/code/Magento/PageBuilder/Test/Mftf/Test/AdminPageBuilderImageTest/ImageTestCMSPageOnTabletTest.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -94,12 +94,12 @@
9494
<dontSeeElement selector="{{ImageOnStorefront.imageMobile('1')}}" stepKey="dontSeeMobileImageOnDefaultRes"/>
9595

9696
<!-- Validate images with window width of 768px -->
97-
<resizeWindow width="769" height="1024" stepKey="resizeWindowTo768by1024"/>
97+
<resizeWindow width="768" height="1024" stepKey="resizeWindowTo768by1024"/>
9898
<seeElement selector="{{ImageOnStorefront.imageDesktop('1')}}" stepKey="seeMainImageOn768by1024"/>
9999
<dontSeeElement selector="{{ImageOnStorefront.imageMobile('1')}}" stepKey="dontSeeMobileImageOn768by1024"/>
100100

101101
<!-- Validate images with window width of 767px -->
102-
<resizeWindow width="768" height="1024" stepKey="resizeWindowTo767by1024"/>
102+
<resizeWindow width="767" height="1024" stepKey="resizeWindowTo767by1024"/>
103103
<seeElement selector="{{ImageOnStorefront.imageMobile('1')}}" stepKey="seeMobileImageOn767by1024"/>
104104
<dontSeeElement selector="{{ImageOnStorefront.imageDesktop('1')}}" stepKey="dontSeeDesktopImageOn767by1024"/>
105105
</test>

0 commit comments

Comments
 (0)