Skip to content

Commit aeaec2b

Browse files
author
Hwashiang Yu
committed
MC-4323: Cannot Add Slider WYSIWYG Image From Gallery or Link to Image in Gallery After Page Has Been Saved
- Added test coverage for task
1 parent 1e8131b commit aeaec2b

File tree

3 files changed

+80
-0
lines changed

3 files changed

+80
-0
lines changed

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

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,7 @@
9898
<element name="messageContent" type="text" selector="(//div[@data-role='slide'])[{{arg1}}]//div[@data-element='content']//p[.='{{arg2}}']" parameterized="true"/>
9999
<element name="noMessageContent" type="text" selector="(//div[@data-role='slide'])[{{arg1}}]//div[@data-element='desktop_image']//div[@data-element='content'][not(*)]" parameterized="true"/>
100100
<element name="messageContentTextArea" type="text" selector="(//div[@data-role='slide'])[{{arg1}}]//div[@data-element='desktop_image']//div[@data-element='content'][.='{{arg2}}']" parameterized="true"/>
101+
<element name="messageContentTextAreaImage" type="text" selector="(//div[@data-role='slide'])[{{arg1}}]//div[@data-element='desktop_image']//div[@data-element='content']//img[contains(@src, {{arg2}})]" parameterized="true"/>
101102
<element name="messageContentHeightJS" type="text" selector="return document.evaluate(&quot;(//div[@data-role='slide'])[{{arg1}}]//div[@data-element='content']//*[contains(text(),'{{arg2}}')]&quot;, document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue.clientHeight;" parameterized="true"/>
102103
<element name="linkUrl" type="button" selector="(//div[@data-role='slide'])[{{arg1}}]//*[@data-element='link'][contains(@data-href,'{{arg2}}')]" parameterized="true"/>
103104
<element name="openInNewTab" type="button" selector="(//div[@data-role='slide'])[{{arg1}}]/*[@data-element='link'][contains(@data-target,'_blank')]" parameterized="true"/>
@@ -174,6 +175,7 @@
174175
<element name="showOverlay" type="button" selector="(//div[@data-role='slide'])[{{arg1}}][@data-show-overlay='{{arg2}}']" parameterized="true"/>
175176
<element name="overlayColorAndTransparency" type="button" selector="(//div[@data-role='slide'])[{{arg1}}]//div[@data-element='overlay' or contains(@class,'pagebuilder-collage-overlay')][contains(@style,'background-color: rgba({{arg2}}, {{arg3}});')]" parameterized="true"/>
176177
<element name="transparentOverlay" type="button" selector="(//div[@data-role='slide'])[{{arg1}}]//div[@data-element='overlay' or contains(@class,'pagebuilder-collage-overlay')][contains(@style,'background-color: transparent;')]" parameterized="true"/>
178+
<element name="inlineWYSIWYGEditorWithTag" type="text" selector="(//div[@data-role='slide'])[{{arg1}}]//div[contains(@class,'inline-wysiwyg')]//{{arg2}}" parameterized="true"/>
177179
<!-- Advanced Configuration -->
178180
<element name="posterAlignment" type="text" selector="(//div[@data-role='slide'])[{{arg1}}]//div[@class='pagebuilder-slide-wrapper'][contains(@style,'text-align: {{arg2}};')]" parameterized="true"/>
179181
<element name="posterNoAlignment" type="text" selector="(//div[@data-role='slide'])[{{arg1}}]//div[@class='pagebuilder-slide-wrapper'][not(contains(@style,'text-align:'))]" parameterized="true"/>

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

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,4 +39,9 @@
3939
<element name="backgroundColor" type="button" selector=".mce-tinymce-inline div[aria-label='Background color']"/>
4040
<element name="formatSelector" type="button" selector="//div[contains(@class, 'mce-tinymce')]//span[text()='Formats']"/>
4141
</section>
42+
<section name="WYSIWYGInsertImageModal">
43+
<element name="imageSelector" type="button" selector=".mce-tinymce-inline div[aria-label='Insert/edit image']"/>
44+
<element name="imageSelectorBrowse" type="button" selector="div[aria-label='Insert/edit image'] i.mce-i-browse"/>
45+
<element name="imageSelectorOk" type="button" selector="//div[contains(@aria-label, 'Insert/edit image')]//span[contains(@class, 'mce-txt')][text()='Ok']"/>
46+
</section>
4247
</sections>

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

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1714,4 +1714,77 @@
17141714
<seeElement selector="{{SlideOnBackend.messageContent('1', PageBuilderSlideItemContent_Slide1.value)}}" stepKey="seeSlideContentAfterHideShow"/>
17151715
<seeElement selector="{{SlideOnBackend.backgroundColor('1', PageBuilderBackgroundColor_Plaintext_Green.rgb)}}" stepKey="seeSlideBackgroundColorAfterHideShow"/>
17161716
</test>
1717+
<test name="SlideItemInlineWysiwygUploadImage">
1718+
<annotations>
1719+
<features value="PageBuilder"/>
1720+
<stories value="Slider"/>
1721+
<title value="Can Add Slider WYSIWYG Image From Gallery or Link to Image in Gallery After Page Has Been Saved"/>
1722+
<description value="A user should be able to upload image to inline wysiwyg after a slider has been saved to a page"/>
1723+
<severity value="CRITICAL"/>
1724+
<useCaseId value="MC-4323"/>
1725+
<testCaseId value="MC"/>
1726+
<group value="pagebuilder"/>
1727+
<group value="pagebuilder-slide"/>
1728+
<group value="pagebuilder-slideItemCommon"/>
1729+
</annotations>
1730+
<before>
1731+
<actionGroup ref="LoginAsAdmin" stepKey="loginAsAdmin"/>
1732+
<magentoCLI command="config:set cms/wysiwyg/enabled enabled" stepKey="enableWYSIWYG"/>
1733+
<magentoCLI command="config:set cms/wysiwyg/editor mage/adminhtml/wysiwyg/tiny_mce/tinymce4Adapter" stepKey="enableTinyMCE4"/>
1734+
<createData entity="_defaultCmsPage" stepKey="createPreReqCMSPage"/>
1735+
<actionGroup ref="navigateToCreatedCMSPage" stepKey="navigateToContentCreatedCMSPage1">
1736+
<argument name="CMSPage" value="$$createPreReqCMSPage$$"/>
1737+
</actionGroup>
1738+
</before>
1739+
<after>
1740+
<deleteData createDataKey="createPreReqCMSPage" stepKey="deleteCreatePreReqCMSPage"/>
1741+
<actionGroup ref="logout" stepKey="logout"/>
1742+
</after>
1743+
<!-- Add Slider -->
1744+
<comment userInput="Add Slider" stepKey="commentAddSlider"/>
1745+
<actionGroup ref="expandPageBuilderPanelGroup" stepKey="expandPageBuilderPanelGroup">
1746+
<argument name="group" value="PageBuilderSliderContentType"/>
1747+
</actionGroup>
1748+
<actionGroup ref="dragContentTypeToStageAndExpectEditPanel" stepKey="dragSliderOntoStage">
1749+
<argument name="contentType" value="PageBuilderSliderContentType"/>
1750+
</actionGroup>
1751+
<actionGroup ref="closeEditPanelSettings" stepKey="closeEditPanelSettings"/>
1752+
<!-- Initial Save -->
1753+
<comment userInput="Initial Save" stepKey="commentInitialSave"/>
1754+
<actionGroup ref="saveAndContinueEditCmsPage" stepKey="initialSaveAndContinueEditCmsPage"/>
1755+
<actionGroup ref="switchToPageBuilderStage" stepKey="initialSwitchToPageBuilderStage"/>
1756+
<!-- Add Image to Slide -->
1757+
<comment userInput="Add Image to Slide" stepKey="commentAddImageToSlide"/>
1758+
<click selector="{{PageBuilderStage.inlineWYSIWYGEditor(PageBuilderSlideContentType.role, '1')}}" stepKey="focusOnEditorArea"/>
1759+
<waitForPageLoad stepKey="waitforInlineWYSIWYGEditor"/>
1760+
<click selector="{{WYSIWYGInsertImageModal.imageSelector}}" stepKey="clickWYSIWYGImageSelector"/>
1761+
<waitForPageLoad stepKey="waitforImageSelectorModal"/>
1762+
<click selector="{{WYSIWYGInsertImageModal.imageSelectorBrowse}}" stepKey="clickWYSIWYGImageSelectorBrowseButton"/>
1763+
<waitForPageLoad stepKey="waitforImageSelectorBrowseModal"/>
1764+
<actionGroup ref="NavigateToMediaFolderActionGroup" stepKey="NavigateToWYSIWYGFolderActionGroup">
1765+
<argument name="FolderName" value="{{PageBuilderBackgroundImage_JPG.path}}"/>
1766+
</actionGroup>
1767+
<waitForElementVisible selector="{{MediaGallerySection.image(PageBuilderBackgroundImage_JPG.value)}}" stepKey="wait" />
1768+
<click selector="{{MediaGallerySection.image(PageBuilderBackgroundImage_JPG.value)}}" stepKey="clickImage" />
1769+
<waitForPageLoad stepKey="waitForAddSelectButton"/>
1770+
<click selector="{{BlockOnGrid.addSelectedBtn}}" stepKey="clickAddSelectedButton" />
1771+
<waitForPageLoad stepKey="waitForImageSelector"/>
1772+
<click selector="{{WYSIWYGInsertImageModal.imageSelectorOk}}" stepKey="clickWYSIWYGImageSelectorOkButton"/>
1773+
<waitForPageLoad stepKey="waitForStageReload"/>
1774+
<click selector="{{PageBuilderPanel.searchPanel}}" stepKey="unFocusSlide"/>
1775+
<waitForPageLoad stepKey="waitForPageLoad"/>
1776+
<!-- Validated Backend -->
1777+
<comment userInput="Validated Backend" stepKey="commentValidateBackend"/>
1778+
<seeElement selector="{{SlideOnBackend.inlineWYSIWYGEditorWithTag('1', 'img')}}" stepKey="alidateImageInEditor"/>
1779+
<actionGroup ref="saveAndContinueEditCmsPage" stepKey="saveAndContinueEditCmsPage"/>
1780+
<actionGroup ref="switchToPageBuilderStage" stepKey="switchToPageBuilderStage"/>
1781+
<!-- Validated Backend After Save -->
1782+
<comment userInput="Validated Backend After Save" stepKey="commentValidateBackendAfterSave"/>
1783+
<seeElement selector="{{SlideOnBackend.inlineWYSIWYGEditorWithTag('1', 'img')}}" stepKey="validateImageInEditorAfterSave"/>
1784+
<!-- Validate Storefront -->
1785+
<comment userInput="Validate Storefront" stepKey="commentValidateStorefront"/>
1786+
<amOnPage url="$$createPreReqCMSPage.identifier$$" stepKey="amOnCmsStorefront"/>
1787+
<waitForPageLoad stepKey="waitForPageLoad4"/>
1788+
<seeElement selector="{{SlideOnFrontend.messageContentTextAreaImage('1', PageBuilderBackgroundImage_JPG.value)}}" stepKey="validateImageFrontEnd"/>
1789+
</test>
17171790
</tests>

0 commit comments

Comments
 (0)