Skip to content

Commit 8793d02

Browse files
committed
Merge branch 'MC-965-hide-content-on-stage' of github.com:magento-obsessive-owls/magento2-page-builder into MC-965-hide-content-on-stage
2 parents 6985fa3 + 8111e9a commit 8793d02

8 files changed

+116
-4
lines changed

app/code/Magento/PageBuilder/Test/Mftf/ActionGroup/ContentTypeImageActionGroup.xml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,4 +37,28 @@
3737
<waitForElementVisible selector="{{ImageOnConfigurationPanel.imageName(property.value)}}" stepKey="seeImageNameOnPreview"/>
3838
<waitForElementVisible selector="{{ImageOnConfigurationPanel.imageSource(property.fileName)}}" stepKey="seeMainImageSource"/>
3939
</actionGroup>
40+
<actionGroup name="validateImage">
41+
<arguments>
42+
<argument name="section"/>
43+
<argument name="pageNamePrefix" defaultValue="admin" type="string"/>
44+
<argument name="image"/>
45+
<argument name="index" defaultValue="1" type="string"/>
46+
</arguments>
47+
<comment userInput="validateImage" stepKey="comment"/>
48+
<waitForElementVisible selector="{{section.base(index)}}" stepKey="waitForBaseElement"/>
49+
<waitForElementVisible selector="{{section.imageSourceByIndex(index, image.fileName)}}" stepKey="waitForImage"/>
50+
<grabAttributeFrom selector="{{section.imageSourceByIndex(index, image.fileName)}}" userInput="src" stepKey="contentTypeSrc"/>
51+
<!-- Grab base URL -->
52+
<executeJS function="return '{{pageNamePrefix}}'" stepKey="pageNamePrefix"/>
53+
<grabFromCurrentUrl regex="/(^.+(?=\/$pageNamePrefix))/" stepKey="baseURL"/>
54+
<!-- Return the string value of image -->
55+
<!--<executeJS function="return '{$contentTypeStyle}'.match(/((?&lt;=(src: url\((&quot;|\'))).+(?=(&quot;|\')\);))/)[0]" stepKey="imageSrcValue"/>-->
56+
<!-- Convert all characters in string variables to regex friendly strings -->
57+
<executeJS function="return '{$baseURL}'.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\\\^\\$\|]/g, '\\\\$&amp;')" stepKey="regexBaseURL"/>
58+
<executeJS function="return '{{image.path}}'.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\\\^\\$\|]/g, '\\\\$&amp;')" stepKey="regexFilePath"/>
59+
<assertRegExp stepKey="assertImageContainsFileInformation">
60+
<expectedResult type="string">/{$regexBaseURL}\/pub\/media.*{$regexFilePath}.*\/{{image.fileName}}(_\d+)?\.{{image.extension}}/</expectedResult>
61+
<actualResult type="variable">$contentTypeSrc</actualResult>
62+
</assertRegExp>
63+
</actionGroup>
4064
</actionGroups>

app/code/Magento/PageBuilder/Test/Mftf/ActionGroup/StageActionGroup.xml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,8 +73,10 @@
7373
<actionGroup name="uploadImageToContentTypeFromStage">
7474
<arguments>
7575
<argument name="property"/>
76+
<argument name="section" defaultValue="PageBuilderStage"/>
77+
<argument name="index" defaultValue="1" type="string"/>
7678
</arguments>
77-
<attachFile userInput="{{property.value}}" selector="{{PageBuilderStage.uploadLocalImageBtn}}" stepKey="attachImageFromLocalToStage"/>
79+
<attachFile userInput="{{property.value}}" selector="{{section.uploadImageInput(index)}}" stepKey="attachImageFromLocalToStage"/>
7880
<waitForLoadingMaskToDisappear stepKey="waitForLoadingMaskToDisappear"/>
7981
<waitForElementVisible selector="{{PageBuilderStage.imageSource(property.fileName)}}" stepKey="waitForMainImageSource1"/>
8082
</actionGroup>

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
<element name="selectFromGalleryBtn" type="button" selector="//figure//div[@class='file-uploader-area']//label[text()='Select from Gallery']"/>
2121
<element name="selectFromGalleryImageBtn" type="button" selector="//ul[@class='pagebuilder-options-links']//label[text()='Select from Gallery']"/>
2222
<element name="uploadImageBtn" type="button" selector="//div[@class='pagebuilder-image-uploader-container']//label[text()='Upload Image']" />
23+
<element name="uploadImageInput" type="button" selector="(//div[contains(@class,'pagebuilder-image-uploader-container')])[{{arg1}}]//input[@name='image']" parameterized="true" />
2324
<element name="uploadNewImageBtn" type="button" selector="//label[text()='Upload New Image']" />
2425
<!-- Advanced Configuration -->
2526
<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/PageBuilderStageSection.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
<element name="contentTypePreviewInStage" type="button" selector="div.pagebuilder-{{arg1}}.pagebuilder-content-type" parameterized="true"/>
3333
<element name="computedHeightOnStage" type="text" selector="return parseInt(window.getComputedStyle(document.querySelector('.pagebuilder-{{arg1}}:nth-of-type({{arg2}})')).height)" parameterized="true"/>
3434
<element name="computedWidthOnStage" type="text" selector="return parseInt(window.getComputedStyle(document.querySelector('.pagebuilder-{{arg1}}:nth-of-type({{arg2}})')).width)" parameterized="true"/>
35-
<element name="uploadLocalImageBtn" type="button" selector="//div[contains(@class,'pagebuilder-image-uploader-container')]//input[@name='background_image']"/>
35+
<element name="uploadImageInput" type="button" selector="//div[contains(@class,'pagebuilder-image-uploader-container')]//input[@name='background_image']"/>
3636
<element name="uploadNewImageBtn" type="button" selector="//label[text()='Upload Image']" />
3737
<element name="selectFromGalleryImageBtn" type="button" selector="//ul[contains(@class,'pagebuilder-options-links')]//label[text()='Select from Gallery']"/>
3838
</section>

app/code/Magento/PageBuilder/Test/Mftf/Test/AdminPageBuilderBannerCommonTest.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1208,7 +1208,7 @@
12081208
</actionGroup>
12091209
<!--Upload image from local machine -->
12101210
<comment userInput="Upload image from local machine" stepKey="commentUploadImageFromLocal" />
1211-
<attachFile userInput="{{PageBuilderImageProperty_JPG.value}}" selector="{{PageBuilderStage.uploadLocalImageBtn}}" stepKey="attachImageFromLocalToStage"/>
1211+
<attachFile userInput="{{PageBuilderImageProperty_JPG.value}}" selector="{{PageBuilderStage.uploadImageInput('1')}}" stepKey="attachImageFromLocalToStage"/>
12121212
<waitForElementVisible selector="{{ImageOnConfigurationPanel.imageSource(PageBuilderImageProperty_JPG.fileName)}}" stepKey="waitForMainImageSource1"/>
12131213
<!--Upload image from Media Gallery Storage -->
12141214
<comment userInput="Upload image from Media Gallery Storage" stepKey="commentUploadImageFromStorage"/>

app/code/Magento/PageBuilder/Test/Mftf/Test/AdminPageBuilderButtonGroupTests.xml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1718,6 +1718,10 @@
17181718
<comment userInput="Validate content type remains disabled after save" stepKey="commentValidateHiddenStage"/>
17191719
<seeElement selector="{{ButtonGroupOnStage.hidden('1')}}" stepKey="waitForContentTypeHidden" />
17201720
<seeElement selector="{{ButtonItemOnStage.hidden('1')}}" stepKey="waitForContentTypeHiddenButtonItem" />
1721+
<!-- Verify we cannot interact with the internal button after save -->
1722+
<comment userInput="Verify we cannot interact with the internal button after save" stepKey="commentVerifyButtonItemIsDisabledAfterSave"/>
1723+
<seeElementInDOM selector="{{ButtonItemOnStage.optionsMenu('1')}}" stepKey="seeDomButtonItemOptionsMenu"/>
1724+
<dontSeeElement selector="{{ButtonItemOnStage.optionsMenu('1')}}" stepKey="dontSeeButtonItemOptionsMenu"/>
17211725
<!-- Validate store front -->
17221726
<comment userInput="Validate content type is disabled on storefront" stepKey="commentValidateHiddenStorefront"/>
17231727
<openNewTab stepKey="openNewTab" />

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

Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1008,4 +1008,85 @@
10081008
<dontSeeElementInDOM selector="{{ImageOnStorefront.hidden('1')}}" stepKey="dontSeeHiddenElement"/>
10091009
<seeElement selector="{{ImageOnStorefront.base('1')}}" stepKey="waitForContentTypeVisible" />
10101010
</test>
1011+
<test name="ImageCanUploadToHiddenImage">
1012+
<annotations>
1013+
<features value="PageBuilder"/>
1014+
<stories value="Image"/>
1015+
<title value="Add Image to hidden image"/>
1016+
<description value="A user can upload an image to a hidden image content type"/>
1017+
<severity value="CRITICAL"/>
1018+
<useCaseId value="MC-965"/>
1019+
<testCaseId value=""/>
1020+
<group value="pagebuilder"/>
1021+
<group value="pagebuilder-image"/>
1022+
<group value="pagebuilder-hideShow"/>
1023+
</annotations>
1024+
<before>
1025+
<actionGroup ref="LoginAsAdmin" stepKey="loginAsAdmin"/>
1026+
<actionGroup ref="navigateToAPageWithPageBuilder" stepKey="navigateToAPageWithPageBuilder"/>
1027+
<actionGroup ref="switchToPageBuilderStage" stepKey="switchToPageBuilderStage"/>
1028+
</before>
1029+
<after>
1030+
<actionGroup ref="navigateToMediaGallery" stepKey="navigateToMediaGallery"/>
1031+
<actionGroup ref="NavigateToMediaFolderActionGroup" stepKey="NavigateToFolder1">
1032+
<argument name="FolderName" value="{{PageBuilderImageProperty_StageJPG.path}}"/>
1033+
</actionGroup>
1034+
<actionGroup ref="DeleteImageFromStorageActionGroup" stepKey="DeleteImageFromStorage1">
1035+
<argument name="Image" value="PageBuilderImageProperty_StageJPG"/>
1036+
</actionGroup>
1037+
<actionGroup ref="logout" stepKey="logout"/>
1038+
</after>
1039+
<actionGroup ref="addPageBuilderPageTitle" stepKey="enterPageTitle">
1040+
<argument name="contentType" value="PageBuilderImageContentType"/>
1041+
</actionGroup>
1042+
<!-- Add Image To stage -->
1043+
<comment userInput="Add Image to Stage" stepKey="addImageContentTypeToStage"/>
1044+
<actionGroup ref="expandPageBuilderPanelGroup" stepKey="expandPageBuilderPanelGroup">
1045+
<argument name="group" value="PageBuilderImageContentType"/>
1046+
</actionGroup>
1047+
<actionGroup ref="dragContentTypeToStage" stepKey="dragContentTypeToStage">
1048+
<argument name="contentType" value="PageBuilderImageContentType"/>
1049+
</actionGroup>
1050+
<!-- Upload image from stage -->
1051+
<comment userInput="Upload image from stage" stepKey="uploadImageFromStage"/>
1052+
<actionGroup ref="uploadImageToContentTypeFromStage" stepKey="addImageToStage">
1053+
<argument name="property" value="PageBuilderImageProperty_StageJPG"/>
1054+
<argument name="section" value="ImageOnStage"/>
1055+
</actionGroup>
1056+
<actionGroup ref="hideContentType" stepKey="hideContentType">
1057+
<argument name="section" value="ImageOnStage"/>
1058+
<argument name="contentType" value="PageBuilderImageContentType"/>
1059+
</actionGroup>
1060+
<click selector="{{PageBuilderStage.selectFromGalleryImageBtn}}" stepKey="clickSelectfromGallery"/>
1061+
<waitForPageLoad stepKey="waitForPageLoad"/>
1062+
<actionGroup ref="CreateImageFolder" stepKey="createImageFolder">
1063+
<argument name="ImageFolder" value="ImageFolder"/>
1064+
</actionGroup>
1065+
<actionGroup ref="attachImage" stepKey="SelectImageFromMediaStorage">
1066+
<argument name="Image" value="PageBuilderImageProperty_StageJPG"/>
1067+
</actionGroup>
1068+
<actionGroup ref="saveImage" stepKey="saveImage"/>
1069+
<!-- Validate Stage -->
1070+
<comment userInput="Validate Stage" stepKey="commentValidateStage"/>
1071+
<actionGroup ref="validateImage" stepKey="validateImageStage">
1072+
<argument name="section" value="ImageOnStage"/>
1073+
<argument name="image" value="PageBuilderImageProperty_StageJPG"/>
1074+
</actionGroup>
1075+
<!-- Validate Stage After Save -->
1076+
<comment userInput="Validate Stage After Save" stepKey="commentValidateStageAfterSave"/>
1077+
<actionGroup ref="saveAndContinueEditCmsPage" stepKey="saveAndContinueEditCmsPage"/>
1078+
<actionGroup ref="switchToPageBuilderStage" stepKey="switchToPageBuilderStage"/>
1079+
<actionGroup ref="validateImage" stepKey="validateImageStageAfterSave">
1080+
<argument name="section" value="ImageOnStage"/>
1081+
<argument name="image" value="PageBuilderImageProperty_StageJPG"/>
1082+
</actionGroup>
1083+
<!-- Validate store front -->
1084+
<comment userInput="Validate content type is disabled on storefront" stepKey="commentValidateHiddenStorefront"/>
1085+
<actionGroup ref="navigateToStoreFront" stepKey="navigateToStoreFront">
1086+
<argument name="contentType" value="PageBuilderImageContentType"/>
1087+
</actionGroup>
1088+
<waitForElement selector="{{ImageOnStorefront.base('1')}}" stepKey="waitForContentTypeNotVisible" />
1089+
<dontSeeElement selector="{{ImageOnStorefront.base('1')}}" stepKey="dontSeeContentType" />
1090+
<seeElementInDOM selector="{{ImageOnStorefront.hidden('1')}}" stepKey="waitForHiddenElement" />
1091+
</test>
10111092
</tests>

app/code/Magento/PageBuilder/Test/Mftf/Test/AdminPageBuilderSlideCommonTest.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1637,7 +1637,7 @@
16371637
</actionGroup>
16381638
<!--Upload image from local machine -->
16391639
<comment userInput="Upload image from local machine" stepKey="commentUploadImageFromLocal" />
1640-
<attachFile userInput="{{PageBuilderImageProperty_JPG.value}}" selector="{{PageBuilderStage.uploadLocalImageBtn}}" stepKey="attachImageFromLocalToStage"/>
1640+
<attachFile userInput="{{PageBuilderImageProperty_JPG.value}}" selector="{{PageBuilderStage.uploadImageInput('1')}}" stepKey="attachImageFromLocalToStage"/>
16411641
<waitForPageLoad stepKey="waitForPageLoad4" />
16421642
<waitForElementVisible selector="{{ImageOnConfigurationPanel.imageSource(PageBuilderImageProperty_JPG.fileName)}}" stepKey="waitForMainImageSource1"/>
16431643
<!--Upload image from Media Gallery Storage -->

0 commit comments

Comments
 (0)