Skip to content

Commit a1137fa

Browse files
committed
Merge remote-tracking branch 'origin/PB-774' into PB-1145
2 parents c46e622 + 4bbb717 commit a1137fa

File tree

10 files changed

+436
-2
lines changed

10 files changed

+436
-2
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
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="AdminNavigateToCreatedCMSPageWithEnabledSecretKeyActionGroup" extends="NavigateToCreatedCMSPageActionGroup">
12+
<annotations>
13+
<description>EXTENDS NavigateToCreatedCMSPageActionGroup. Searches for and goes to the edit page of a created CMS page in admin. Removes URL navigation for secret key testing.</description>
14+
</annotations>
15+
<remove keyForRemoval="navigateToCMSPagesGrid"/>
16+
</actionGroup>
17+
</actionGroups>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
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="NavigateToPageBuilderTemplatesGridPageWithSecretKeyEnabledActionGroup">
11+
<annotations>
12+
<description>Navigates to the Page Builder Templates grid page with Secret Key Enabled.</description>
13+
</annotations>
14+
<remove keyForRemoval="goToPageBuilderTemplatesGridPage"/>
15+
</actionGroup>
16+
</actionGroups>

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

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -141,4 +141,10 @@
141141
<item name="Magento_PageBuilder::template_delete">Magento_PageBuilder::template_delete</item>
142142
</array>
143143
</entity>
144+
<!-- Admin Menu -->
145+
<entity name="AdminMenuContentElementsTemplates">
146+
<data key="pageTitle">Templates</data>
147+
<data key="title">Templates</data>
148+
<data key="dataUiId">magento-pagebuilder-templates</data>
149+
</entity>
144150
</entities>

app/code/Magento/PageBuilder/Test/Mftf/Section/PageBuilderBannerSection/BannerOnBackendSection.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
<element name="editableButtonItemElement" type="button" selector="(//div[contains(@class,'pagebuilder-banner') and contains(@class,'pagebuilder-content-type')])[{{bannerIndex}}]//a//span[@contenteditable='true']" parameterized="true"/>
2323
<element name="wysiwygLinkUrl" type="button" selector="(//div[contains(@class,'pagebuilder-banner') and contains(@class,'pagebuilder-content-type')])[{{bannerIndex}}]//a[@href='{{link}}']" parameterized="true"/>
2424
<element name="imageOnStage" type="text" selector="(//div[contains(@class,'pagebuilder-banner') and contains(@class,'pagebuilder-content-type')])[{{bannerIndex}}]//img[contains(@src,'{{image}}')]" parameterized="true"/>
25-
<element name="imageSourceByIndex" type="text" selector="(//div[@data-content-type='banner'])[{{bannerIndex}}]/div[contains(@style,'{{image}}')]" parameterized="true"/>
25+
<element name="imageSourceByIndex" type="text" selector="(//div[@data-content-type='banner'])[{{bannerIndex}}]/div[contains(@data-background-images,'{{image}}')]" parameterized="true"/>
2626
<element name="uploadImageInput" type="button" selector="//div[contains(@class,'pagebuilder-image-uploader-container')]//input[@name='background_image']"/>
2727
<element name="variablePlaceholder" type="text" selector="(//div[contains(@class,'pagebuilder-banner')])[{{bannerIndex}}]//*[contains(@class, 'magento-variable') and contains(@class, 'magento-placeholder')]" parameterized="true"/>
2828
<element name="widgetPlaceholder" type="text" selector="(//div[contains(@class,'pagebuilder-banner')])[{{bannerIndex}}]//*[contains(@class, 'magento-placeholder') and contains(@class, 'magento-widget')]" parameterized="true"/>

app/code/Magento/PageBuilder/Test/Mftf/Section/PageBuilderImageSection/ImageOnStageSection.xml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@
1515
<element name="imageAltText" type="text" selector="(//figure[@data-content-type='image'])[{{arg1}}]//img[@alt='{{arg2}}']" parameterized="true"/>
1616
<element name="imageTitleAttribute" type="text" selector="(//figure[@data-content-type='image'])[{{arg1}}]//img[@title='{{arg2}}']" parameterized="true"/>
1717
<element name="caption" type="text" selector="(//div[contains(@class,'pagebuilder-content-type') and contains(@class,'pagebuilder-image')])[{{arg1}}]//figcaption" parameterized="true"/>
18+
<element name="onHoverSelectFromGalleryButton" type="button" selector="(//div[contains(@class,'pagebuilder-content-type') and contains(@class,'pagebuilder-{{arg1}}')])[{{arg2}}]//ul[contains(@class,'pagebuilder-options-links')]//label[text()='Select from Gallery']" parameterized="true"/>
19+
<element name="onHoverUploadImageButton" type="button" selector="(//div[contains(@class,'pagebuilder-content-type') and contains(@class,'pagebuilder-{{arg1}}')])[{{arg2}}]//label[text()='Upload New Image']" parameterized="true"/>
1820
<!-- Advanced Configuration -->
1921
<element name="noAlignment" type="text" selector="(//div[contains(@class,'pagebuilder-content-type') and contains(@class,'pagebuilder-image')])[{{arg1}}]//figure[not(contains(@style,'text-align:'))]" parameterized="true"/>
2022
<element name="alignment" type="text" selector="(//div[contains(@class,'pagebuilder-content-type') and contains(@class,'pagebuilder-image')])[{{arg1}}]//figure[contains(@style,'text-align: {{arg2}};')]" parameterized="true"/>

app/code/Magento/PageBuilder/Test/Mftf/Section/PageBuilderSliderSection/SlideOnBackendSection.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
<element name="overlay" type="text" selector="(//div[@data-content-type=&quot;slide&quot;])[{{slideIndex}}]//div[@data-element=&quot;overlay&quot; or contains(@class,&quot;pagebuilder-overlay&quot;)]" parameterized="true"/>
1919
<element name="overlayJS" type="button" selector="document.querySelectorAll('[data-content-type=slider] div.pagebuilder-overlay')[{{slideOverlayIndex}} - 1]" parameterized="true"/>
2020
<element name="editableButtonItemElement" type="button" selector="(//div[@data-content-type='slide'])[{{slideIndex}}]//a[@data-element='button']//span[contains(@contenteditable, 'true')]" parameterized="true"/>
21-
<element name="imageSourceByIndex" type="text" selector="(//div[@data-content-type='slide'])[{{slideIndex}}]/div[contains(@style,'{{image}}')]" parameterized="true" deprecated="Styles are not inline"/>
21+
<element name="imageSourceByIndex" type="text" selector="(//div[@data-content-type='slide'])[{{slideIndex}}]/div[contains(@data-background-images,'{{image}}')]" parameterized="true" deprecated="Styles are not inline"/>
2222
<element name="openOptionsMenu" type="button" selector="(//div[contains(@class,'navigation-dot')])[{{navigationDotIndex}}]" parameterized="true"/>
2323
<element name="optionsMenu" type="button" selector="(//div[contains(@class,'navigation-dot')])[{{navigationDotIndex}}]//div[@class='pagebuilder-options-wrapper']" parameterized="true"/>
2424
<element name="optionsMenuButton" type="button" selector="(//div[contains(@class,'navigation-dot')])[{{navigationDotIndex}}]//li[contains(@class,'pagebuilder-options-link')]//a[contains(@class,'{{buttonClass}}')]" parameterized="true"/>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,117 @@
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="BannerUploadImageWithSecretKeyEnabledTest">
11+
<annotations>
12+
<features value="PageBuilder"/>
13+
<stories value="Banner"/>
14+
<title value="Upload Image to Banner with Secret Key URLs Enabled"/>
15+
<description value="Verify that users are able to upload images to a Banner when 'Add Secret Key to URLs' is
16+
enabled and that the images render correctly on the storefront."/>
17+
<severity value="BLOCKER"/>
18+
<testCaseId value="PB-907"/>
19+
<group value="pagebuilder"/>
20+
<group value="pagebuilder-banner"/>
21+
<group value="pagebuilder-bannerCommon"/>
22+
<group value="secret-key-urls"/>
23+
</annotations>
24+
25+
<before>
26+
<!-- Create CMS Page, Add Banner to Row on Page -->
27+
<createData entity="_emptyCmsPage" stepKey="createCMSPage"/>
28+
<actionGroup ref="AdminLoginActionGroup" stepKey="loginAsAdmin"/>
29+
<actionGroup ref="NavigateToCreatedCMSPageActionGroup" stepKey="navigateToCreatedCMSPage">
30+
<argument name="CMSPage" value="$$createCMSPage$$"/>
31+
</actionGroup>
32+
<actionGroup ref="switchToPageBuilderStage" stepKey="switchToPageBuilderStage"/>
33+
<actionGroup ref="dragContentTypeToStage" stepKey="dragRowToRootContainer">
34+
<argument name="contentType" value="PageBuilderRowContentType"/>
35+
<argument name="containerTargetType" value="PageBuilderRootContainerContentType"/>
36+
</actionGroup>
37+
<actionGroup ref="expandPageBuilderPanelMenuSection" stepKey="expandPageBuilderPanelMenuSection">
38+
<argument name="contentType" value="PageBuilderBannerContentType"/>
39+
</actionGroup>
40+
<actionGroup ref="dragContentTypeToStage" stepKey="dragBannerToRow">
41+
<argument name="contentType" value="PageBuilderBannerContentType"/>
42+
</actionGroup>
43+
<actionGroup ref="exitPageBuilderFullScreen" stepKey="exitPageBuilderFullScreen"/>
44+
<actionGroup ref="SaveAndContinueEditCmsPageActionGroup" stepKey="saveAndContinueEditCmsPage"/>
45+
</before>
46+
47+
<after>
48+
<!-- Revert Configurations & Delete Data -->
49+
<deleteData createDataKey="createCMSPage" stepKey="deleteCMSPage"/>
50+
<magentoCLI command="config:set admin/security/use_form_key 0" stepKey="disableSecretKeyUrls"/>
51+
<actionGroup ref="CliCacheCleanActionGroup" stepKey="cleanInvalidatedCaches">
52+
<argument name="tags" value="config full_page"/>
53+
</actionGroup>
54+
<actionGroup ref="ReloadPageActionGroup" stepKey="reloadPage"/>
55+
<actionGroup ref="NavigateToMediaGalleryActionGroup" stepKey="navigateToMediaGallery"/>
56+
<actionGroup ref="NavigateToMediaFolderActionGroup" stepKey="NavigateToFolder">
57+
<argument name="FolderName" value="{{PageBuilderBackgroundImage_JPG.path}}"/>
58+
</actionGroup>
59+
<actionGroup ref="DeleteImageFromStorageActionGroup" stepKey="DeleteImageFromStorage">
60+
<argument name="Image" value="PageBuilderBackgroundImage_JPG"/>
61+
</actionGroup>
62+
<actionGroup ref="AdminLogoutActionGroup" stepKey="logout"/>
63+
</after>
64+
65+
<!-- Enable 'Add Secret Key to URLs' -->
66+
<magentoCLI command="config:set admin/security/use_form_key 1" stepKey="enableSecretKeyUrls"/>
67+
<actionGroup ref="CliCacheCleanActionGroup" stepKey="cleanInvalidatedCaches">
68+
<argument name="tags" value="config full_page"/>
69+
</actionGroup>
70+
<actionGroup ref="ReloadPageActionGroup" stepKey="reloadPage"/>
71+
72+
<!-- Navigate Back to CMS Page -->
73+
<actionGroup ref="AdminNavigateMenuActionGroup" stepKey="navigateToCMSPagesGrid">
74+
<argument name="menuUiId" value="{{AdminMenuContent.dataUiId}}"/>
75+
<argument name="submenuUiId" value="{{AdminMenuContentElementsPages.dataUiId}}"/>
76+
</actionGroup>
77+
<actionGroup ref="AdminNavigateToCreatedCMSPageWithEnabledSecretKeyActionGroup" stepKey="navigateToCreatedCMSPage">
78+
<argument name="CMSPage" value="$$createCMSPage$$"/>
79+
</actionGroup>
80+
81+
<!-- Upload Image to Banner -->
82+
<actionGroup ref="switchToPageBuilderStage" stepKey="switchToPageBuilderStage"/>
83+
<actionGroup ref="verifyUploadImageButtons" stepKey="verifyUploadImageButtons">
84+
<argument name="contentType" value="PageBuilderBannerContentType"/>
85+
</actionGroup>
86+
<actionGroup ref="uploadImageToContentTypeFromStage" stepKey="uploadImageToBanner">
87+
<argument name="property" value="PageBuilderImageProperty_JPG"/>
88+
<argument name="section" value="BannerOnBackend"/>
89+
</actionGroup>
90+
91+
<!-- Save CMS Page -->
92+
<actionGroup ref="exitPageBuilderFullScreen" stepKey="exitPageBuilderFullScreen"/>
93+
<actionGroup ref="SaveAndContinueEditCmsPageActionGroup" stepKey="saveAndContinueEditCmsPage"/>
94+
95+
<!-- Verify Banner Background Image Renders on Storefront -->
96+
<actionGroup ref="NavigateToStorefrontForCreatedPageActionGroup" stepKey="navigateToStorefront">
97+
<argument name="page" value="$$createCMSPage.identifier$$"/>
98+
</actionGroup>
99+
<actionGroup ref="validateBackgroundImageContainer" stepKey="validateImageOnStorefront">
100+
<argument name="section" value="BannerOnFrontend"/>
101+
<argument name="backgroundImage" value="PageBuilderBackgroundImage_JPG"/>
102+
</actionGroup>
103+
104+
<!-- Disable 'Add Secret Key to URLs' -->
105+
<magentoCLI command="config:set admin/security/use_form_key 0" stepKey="disableSecretKeyUrls"/>
106+
<actionGroup ref="CliCacheCleanActionGroup" stepKey="cleanInvalidatedCaches2">
107+
<argument name="tags" value="config full_page"/>
108+
</actionGroup>
109+
<actionGroup ref="ReloadPageActionGroup" stepKey="reloadPage2"/>
110+
111+
<!-- Verify Banner Background Image Renders on Storefront -->
112+
<actionGroup ref="validateBackgroundImageContainer" stepKey="validateImageOnStorefront2">
113+
<argument name="section" value="BannerOnFrontend"/>
114+
<argument name="backgroundImage" value="PageBuilderBackgroundImage_JPG"/>
115+
</actionGroup>
116+
</test>
117+
</tests>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
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="ImageUploadImageWithSecretKeyEnabledTest" extends="BannerUploadImageWithSecretKeyEnabledTest">
11+
<annotations>
12+
<features value="PageBuilder"/>
13+
<stories value="Image"/>
14+
<title value="Upload Image to Image Content Type with Secret Key URLs Enabled"/>
15+
<description value="Verify that users are able to upload images to an Image content type when 'Add Secret
16+
Key to URLs' is enabled and that the images render correctly on the storefront."/>
17+
<severity value="BLOCKER"/>
18+
<testCaseId value="PB-880"/>
19+
<group value="pagebuilder"/>
20+
<group value="pagebuilder-image"/>
21+
<group value="secret-key-urls"/>
22+
</annotations>
23+
24+
<before>
25+
<actionGroup ref="expandPageBuilderPanelMenuSection" stepKey="expandPageBuilderPanelMenuSection">
26+
<argument name="contentType" value="PageBuilderImageContentType"/>
27+
</actionGroup>
28+
<actionGroup ref="dragContentTypeToStage" stepKey="dragBannerToRow">
29+
<argument name="contentType" value="PageBuilderImageContentType"/>
30+
</actionGroup>
31+
</before>
32+
33+
<waitForElementVisible selector="{{ImageOnStageWithoutImageUploaded.uploadImageBtn}}" stepKey="verifyUploadImageButtons"/>
34+
<waitForElementVisible selector="{{ImageOnStageWithoutImageUploaded.selectFromGalleryBtn}}" stepKey="seeSelectFromGalleryButton" after="verifyUploadImageButtons"/>
35+
<actionGroup ref="uploadImageToContentTypeFromStage" stepKey="uploadImageToBanner">
36+
<argument name="property" value="PageBuilderImageProperty_JPG"/>
37+
<argument name="section" value="ImageOnStageWithoutImageUploaded"/>
38+
</actionGroup>
39+
<actionGroup ref="validateImage" stepKey="validateImageOnStorefront">
40+
<argument name="section" value="ImageOnStorefront"/>
41+
<argument name="image" value="PageBuilderImageProperty_JPG"/>
42+
</actionGroup>
43+
<actionGroup ref="validateImage" stepKey="validateImageOnStorefront2">
44+
<argument name="section" value="ImageOnStorefront"/>
45+
<argument name="image" value="PageBuilderImageProperty_JPG"/>
46+
</actionGroup>
47+
</test>
48+
</tests>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
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="SlideUploadImageWithSecretKeyEnabledTest" extends="BannerUploadImageWithSecretKeyEnabledTest">
11+
<annotations>
12+
<features value="PageBuilder"/>
13+
<stories value="Slider"/>
14+
<title value="Slide Item - Upload Image to Slide with Secret Key URLs Enabled"/>
15+
<description value="Verify that users are able to upload images to a Slide when 'Add Secret Key to URLs' is
16+
enabled and that the images render correctly on the storefront."/>
17+
<severity value="BLOCKER"/>
18+
<testCaseId value="PB-884"/>
19+
<group value="pagebuilder"/>
20+
<group value="pagebuilder-slide"/>
21+
<group value="pagebuilder-slideItemCommon"/>
22+
<group value="secret-key-urls"/>
23+
</annotations>
24+
25+
<before>
26+
<actionGroup ref="expandPageBuilderPanelMenuSection" stepKey="expandPageBuilderPanelMenuSection">
27+
<argument name="contentType" value="PageBuilderBannerContentType"/>
28+
</actionGroup>
29+
<actionGroup ref="dragContentTypeToStage" stepKey="dragBannerToRow">
30+
<argument name="contentType" value="PageBuilderSliderContentType"/>
31+
</actionGroup>
32+
</before>
33+
34+
<actionGroup ref="verifyUploadImageButtons" stepKey="verifyUploadImageButtons">
35+
<argument name="contentType" value="PageBuilderSlideContentType"/>
36+
</actionGroup>
37+
<actionGroup ref="uploadImageToContentTypeFromStage" stepKey="uploadImageToBanner">
38+
<argument name="property" value="PageBuilderImageProperty_JPG"/>
39+
<argument name="section" value="SlideOnBackend"/>
40+
</actionGroup>
41+
<actionGroup ref="validateBackgroundImageContainer" stepKey="validateImageOnStorefront">
42+
<argument name="section" value="SlideOnFrontend"/>
43+
<argument name="backgroundImage" value="PageBuilderBackgroundImage_JPG"/>
44+
</actionGroup>
45+
<actionGroup ref="validateBackgroundImageContainer" stepKey="validateImageOnStorefront2">
46+
<argument name="section" value="SlideOnFrontend"/>
47+
<argument name="backgroundImage" value="PageBuilderBackgroundImage_JPG"/>
48+
</actionGroup>
49+
</test>
50+
</tests>

0 commit comments

Comments
 (0)