Skip to content

Commit 6bcfe12

Browse files
committed
MC-5474: Anchor tag name is used on banner/slide/image wrapper when no link is specified by admin
Remove emptyLinkUrl and create new sections for empty links
1 parent abd7ea8 commit 6bcfe12

File tree

4 files changed

+113
-9
lines changed

4 files changed

+113
-9
lines changed

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

Lines changed: 53 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,6 @@
3939
<element name="messageContentText" type="text" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='content']//*[contains(text(),'{{arg2}}')]" parameterized="true"/>
4040
<element name="messageContentHeightJS" type="text" selector="return document.evaluate(&quot;(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='content']//div[contains(text(),'{{arg2}}')]&quot;, document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue.clientHeight;" parameterized="true"/>
4141
<element name="linkUrl" type="button" selector="(//div[@data-role='banner'])[{{arg1}}]/a[@data-element='link'][contains(@href,'{{arg2}}')]" parameterized="true"/>
42-
<element name="emptyLinkUrl" type="button" selector="(//div[@data-role='banner'])[{{arg1}}]/div[@data-element='link'][not(@href) and not(@target)]" parameterized="true"/>
4342
<element name="openInNewTab" type="button" selector="(//div[@data-role='banner'])[{{arg1}}]/a[@data-element='link'][contains(@target,'_blank')]" parameterized="true"/>
4443
<element name="button" type="button" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper']//button" parameterized="true"/>
4544
<element name="showButton" type="button" selector="(//div[@data-role='banner'])[{{arg1}}][@data-show-button='{{arg2}}']" parameterized="true"/>
@@ -62,6 +61,59 @@
6261
<element name="posterPadding" type="text" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='overlay'][contains(@style,'padding: {{arg2}}px;')]" parameterized="true"/>
6362
<element name="collagePadding" type="text" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper'][contains(@style,'padding: {{arg2}}px;')]" parameterized="true"/>
6463
</section>
64+
<section name="BannerOnFrontendEmptyLink">
65+
<element name="base" type="button" selector="(//div[@data-role='banner'])[{{arg1}}]" parameterized="true"/>
66+
<element name="baseJS" type="button" selector="document.querySelectorAll('[data-role=banner] div.pagebuilder-banner-wrapper')[{{arg1}} - 1]" parameterized="true"/>
67+
<element name="hidden" type="button" selector="(//div[@data-role='banner'])[{{arg1}}][contains(@style, 'display: none')]" parameterized="true"/>
68+
<element name="notHidden" type="button" selector="(//div[@data-role='banner'])[{{arg1}}][not(contains(@style, 'display: none'))]" parameterized="true"/>
69+
<element name="wrapperJS" type="button" selector="document.querySelectorAll('[data-role=banner] div.pagebuilder-banner-wrapper')[{{arg1}} - 1]" parameterized="true"/>
70+
<element name="overlay" type="button" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='overlay']" parameterized="true"/>
71+
<element name="overlayJS" type="button" selector="document.querySelectorAll('[data-role=banner] div.pagebuilder-overlay')[{{arg1}} - 1]" parameterized="true"/>
72+
<element name="wysiwygLinkUrl" type="button" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper']//a[@href='{{arg2}}']" parameterized="true"/>
73+
<!-- Appearance Configuration -->
74+
<element name="appearance" type="text" selector="(//div[@data-role='banner'])[{{arg1}}][@data-appearance='{{arg2}}']" parameterized="true"/>
75+
<element name="posterMinimumHeight" type="text" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='overlay'][contains(@style,'min-height: {{arg2}}px;')]" parameterized="true"/>
76+
<element name="collageMinimumHeight" type="text" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper'][contains(@style,'min-height: {{arg2}}px;')]" parameterized="true"/>
77+
<!-- Background Configuration -->
78+
<element name="backgroundPosition" type="button" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper'][contains(@style,'background-position: {{arg2}};')]" parameterized="true"/>
79+
<element name="backgroundSize" type="button" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper'][contains(@style,'background-size: {{arg2}};')]" parameterized="true"/>
80+
<element name="backgroundRepeat" type="button" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper'][contains(@style,'background-repeat: {{arg2}};')]" parameterized="true"/>
81+
<element name="backgroundAttachment" type="button" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper'][contains(@style,'background-attachment: {{arg2}};')]" parameterized="true"/>
82+
<element name="backgroundColor" type="button" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper'][contains(@style,'background-color: {{arg2}};')]" parameterized="true"/>
83+
<element name="noBackgroundColor" type="button" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper'][not(contains(@style,'background-color:'))]" parameterized="true"/>
84+
<element name="backgroundImage" type="button" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper'][contains(@style,'background-image: url(') and contains(@style,'{{arg2}}')]" parameterized="true"/>
85+
<element name="noBackgroundImage" type="button" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper'][not(contains(@style,'background-image:'))]" parameterized="true"/>
86+
<!-- Content Configuration -->
87+
<element name="messageContent" type="text" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper']//div[@data-element='content']//p[.='{{arg2}}']" parameterized="true"/>
88+
<element name="noMessageContent" type="text" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper']//div[@data-element='content'][.='Edit Banner Text'][not(*)]" parameterized="true"/>
89+
<element name="messageContentTextArea" type="text" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper']//div[@data-element='content'][.='{{arg2}}']" parameterized="true"/>
90+
<element name="messageContentTextAreaImage" type="text" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper']//div[@data-element='content']//img[contains(@src, {{arg2}})]" parameterized="true"/>
91+
<element name="messageContentTextAreaTextWidget" type="text" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='content']//a[contains(@href,'{{arg2}}{{arg3}}')]" parameterized="true"/>
92+
<element name="messageContentText" type="text" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='content']//*[contains(text(),'{{arg2}}')]" parameterized="true"/>
93+
<element name="messageContentHeightJS" type="text" selector="return document.evaluate(&quot;(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='content']//div[contains(text(),'{{arg2}}')]&quot;, document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue.clientHeight;" parameterized="true"/>
94+
<element name="linkUrl" type="button" selector="(//div[@data-role='banner'])[{{arg1}}]/div[@data-element='empty_link'][not(@href) and not(@target)][not(contains(@href,'{{arg2}}'))]" parameterized="true"/>
95+
<element name="openInNewTab" type="button" selector="(//div[@data-role='banner'])[{{arg1}}]/div[@data-element='empty_link'][not(@href) and not(@target)][not(contains(@target,'_blank'))]" parameterized="true"/>
96+
<element name="button" type="button" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper']//button" parameterized="true"/>
97+
<element name="showButton" type="button" selector="(//div[@data-role='banner'])[{{arg1}}][@data-show-button='{{arg2}}']" parameterized="true"/>
98+
<element name="buttonType" type="button" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper']//button[contains(@class,'{{arg2}}')]" parameterized="true"/>
99+
<element name="buttonText" type="button" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper']//button[.='{{arg2}}']" parameterized="true"/>
100+
<element name="showOverlay" type="text" selector="(//div[@data-role='banner'])[{{arg1}}][@data-show-overlay='{{arg2}}']" parameterized="true"/>
101+
<element name="overlayColorAndTransparency" type="text" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper']//div[@data-element='overlay'][contains(@style,'background-color: rgba({{arg2}}, {{arg3}});')]" parameterized="true"/>
102+
<element name="transparentOverlay" type="text" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper']//div[@data-element='overlay'][contains(@style,'background-color: transparent;')]" parameterized="true"/>
103+
<!-- Advanced Configuration -->
104+
<element name="alignment" type="text" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper'][contains(@style,'text-align: {{arg2}};')]" parameterized="true"/>
105+
<element name="noAlignment" type="text" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper'][not(contains(@style,'text-align:'))]" parameterized="true"/>
106+
<element name="border" type="text" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper'][contains(@style,'border-style: {{arg2}};')]" parameterized="true"/>
107+
<element name="borderColor" type="text" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper'][contains(@style,'border-color: {{arg2}};')]" parameterized="true"/>
108+
<element name="noBorderColor" type="text" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper'][not(contains(@style,'border-color:'))]" parameterized="true"/>
109+
<element name="borderWidth" type="text" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper'][contains(@style,'border-width: {{arg2}}px;')]" parameterized="true"/>
110+
<element name="borderRadius" type="text" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper'][contains(@style,'border-radius: {{arg2}}px;')]" parameterized="true"/>
111+
<element name="cssClasses" type="text" selector="(//div[@data-role='banner'])[{{arg1}}][contains(@class,'{{arg2}}')]" parameterized="true"/>
112+
<element name="noCssClasses" type="text" selector="(//div[@data-role='banner'])[{{arg1}}][not(@class)]" parameterized="true"/>
113+
<element name="margins" type="text" selector="(//div[@data-role='banner'])[{{arg1}}][contains(@style,'margin: {{arg2}}px;')]" parameterized="true"/>
114+
<element name="posterPadding" type="text" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='overlay'][contains(@style,'padding: {{arg2}}px;')]" parameterized="true"/>
115+
<element name="collagePadding" type="text" selector="(//div[@data-role='banner'])[{{arg1}}]//div[@data-element='wrapper'][contains(@style,'padding: {{arg2}}px;')]" parameterized="true"/>
116+
</section>
65117
<section name="BannerOnBackend">
66118
<element name="base" type="button" selector="(//div[contains(@class,'pagebuilder-banner') and contains(@class,'pagebuilder-content-type')])[{{arg1}}]" parameterized="true"/>
67119
<element name="hidden" type="button" selector="(//div[contains(@class,'pagebuilder-banner') and contains(@class,'pagebuilder-content-type')])[{{arg1}}]/ancestor::*[contains(@class, 'pagebuilder-content-type-wrapper') and contains(@class, 'pagebuilder-content-type-hidden')]" parameterized="true"/>

0 commit comments

Comments
 (0)