Skip to content

Commit de2e8f2

Browse files
committed
MC-5079: Add Box Sizing to Storefront Styles (Border & Height Storefront Issues)
- add action group to assert height greater than min height - add tests for containers
1 parent 2a150a0 commit de2e8f2

File tree

4 files changed

+205
-0
lines changed

4 files changed

+205
-0
lines changed

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

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,4 +47,18 @@
4747
<actualResult type="variable">contentTypeHeightRatio</actualResult>
4848
</assertLessThanOrEqual>
4949
</actionGroup>
50+
<actionGroup name="validateContentTypeHeightGreaterThanMinHeight">
51+
<arguments>
52+
<argument name="content" type="string"/>
53+
<argument name="index" defaultValue="1" type="string"/>
54+
<argument name="border" defaultValue="PageBuilderAdvancedBorderWidthProperty0"/>
55+
<argument name="height" defaultValue="PageBuilderMinHeightProperty_300"/>
56+
<argument name="padding" defaultValue="PageBuilderPaddingPropertyDefault"/>
57+
</arguments>
58+
<executeJS function="return document.querySelectorAll('{{content}}')[{{index}}-1].getBoundingClientRect().height-{{padding.paddingTop}}-{{padding.paddingBottom}}-({{border.value}}*2)" stepKey="actualContentHeight"/>
59+
<assertGreaterThan stepKey="assertContentTypeHeightGreaterThanMinHeight">
60+
<expectedResult type="int">{{height.value}}</expectedResult>
61+
<actualResult type="variable">actualContentHeight</actualResult>
62+
</assertGreaterThan>
63+
</actionGroup>
5064
</actionGroups>

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

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -216,6 +216,48 @@
216216
<argument name="content" value="{{ColumnOnFrontend.baseCSS}}"/>
217217
</actionGroup>
218218
</test>
219+
<test name="ColumnWithBordersPaddingAndLargeContentsGreaterThanMinHeight" extends="RowWithBordersPaddingAndLargeContentsGreaterThanMinHeight">
220+
<annotations>
221+
<features value="PageBuilder"/>
222+
<stories value="Column"/>
223+
<title value="Column with borders, padding, and large content is greater than min height"/>
224+
<description value="A user can see Column height with borders, padding, and large content is greater than min height"/>
225+
<severity value="CRITICAL"/>
226+
<useCaseId value="MC-5079"/>
227+
<testCaseId value="MC-5803"/>
228+
<group value="pagebuilder"/>
229+
<group value="pagebuilder-column"/>
230+
</annotations>
231+
<actionGroup ref="addPageBuilderPageTitle" stepKey="enterPageTitle">
232+
<argument name="contentType" value="PageBuilderColumnContentType"/>
233+
</actionGroup>
234+
<actionGroup ref="dragContentTypeToStage" after="commentConfigureContentType" stepKey="dragContentTypeToStage">
235+
<argument name="contentType" value="PageBuilderColumnContentType"/>
236+
</actionGroup>
237+
<actionGroup ref="openPageBuilderEditPanelByIndex" stepKey="openEditPanel">
238+
<argument name="contentType" value="PageBuilderColumnContentType"/>
239+
</actionGroup>
240+
<actionGroup ref="dragContentTypeToContainer" stepKey="dragContentTypeToContainer">
241+
<argument name="contentType" value="PageBuilderHeadingContentType"/>
242+
<argument name="containerTargetType" value="PageBuilderColumnContentType"/>
243+
</actionGroup>
244+
<actionGroup ref="validateContentTypeHeightGreaterThanMinHeight" stepKey="validateContentTypeHeightBeforeSave">
245+
<argument name="content" value="{{ColumnOnBackend.baseCSS}}"/>
246+
<argument name="border" value="PageBuilderAdvancedBorderWidthProperty10"/>
247+
<argument name="padding" value="PageBuilderPaddingProperty10"/>
248+
</actionGroup>
249+
<actionGroup ref="validateContentTypeHeightGreaterThanMinHeight" stepKey="validateContentTypeHeightAfterSave">
250+
<argument name="content" value="{{ColumnOnBackend.baseCSS}}"/>
251+
<argument name="border" value="PageBuilderAdvancedBorderWidthProperty10"/>
252+
<argument name="padding" value="PageBuilderPaddingProperty10"/>
253+
</actionGroup>
254+
<actionGroup ref="navigateToStoreFront" stepKey="navigateToStoreFront">
255+
<argument name="contentType" value="PageBuilderColumnContentType"/>
256+
</actionGroup>
257+
<actionGroup ref="validateContentTypeHeightGreaterThanMinHeight" stepKey="validateContentTypeHeightStorefront">
258+
<argument name="content" value="{{ColumnOnFrontend.baseCSS}}"/>
259+
</actionGroup>
260+
</test>
219261
<test name="ColumnConfigurationHasVerticalAlignment">
220262
<annotations>
221263
<features value="PageBuilder"/>

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

Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -219,6 +219,101 @@
219219
<argument name="content" value="{{RowOnStorefront.baseCSS}}"/>
220220
</actionGroup>
221221
</test>
222+
<test name="RowWithBordersPaddingAndLargeContentsGreaterThanMinHeight">
223+
<annotations>
224+
<features value="PageBuilder"/>
225+
<stories value="Row"/>
226+
<title value="Row with borders, padding, and large content is greater than min height"/>
227+
<description value="A user can see Row height with borders, padding, and large content is greater than min height"/>
228+
<severity value="CRITICAL"/>
229+
<useCaseId value="MC-5079"/>
230+
<testCaseId value="MC-5802"/>
231+
<group value="pagebuilder"/>
232+
<group value="pagebuilder-row"/>
233+
<group value="pagebuilder-rowLayout"/>
234+
</annotations>
235+
<before>
236+
<actionGroup ref="LoginAsAdmin" stepKey="loginAsAdmin"/>
237+
<actionGroup ref="navigateToAPageWithPageBuilder" stepKey="navigateToAPageWithPageBuilder"/>
238+
<actionGroup ref="switchToPageBuilderStage" stepKey="switchToPageBuilderStage"/>
239+
</before>
240+
<after>
241+
<actionGroup ref="logout" stepKey="logout"/>
242+
</after>
243+
<actionGroup ref="addPageBuilderPageTitle" stepKey="enterPageTitle">
244+
<argument name="contentType" value="PageBuilderRowContentType"/>
245+
</actionGroup>
246+
<!-- Configure content type -->
247+
<comment userInput="Configure content type" stepKey="commentConfigureContentType"/>
248+
<actionGroup ref="openPageBuilderEditPanelByIndex" stepKey="openEditPanel">
249+
<argument name="contentType" value="PageBuilderRowContentType"/>
250+
</actionGroup>
251+
<actionGroup ref="fillSlideOutPanelField" stepKey="enterMinHeightProperty">
252+
<argument name="property" value="PageBuilderMinHeightProperty_300"/>
253+
</actionGroup>
254+
<actionGroup ref="selectSlideOutPanelField" stepKey="enterBorder">
255+
<argument name="property" value="PageBuilderAdvancedBorderPropertySolid"/>
256+
</actionGroup>
257+
<actionGroup ref="fillSlideOutPanelFieldGeneral" stepKey="enterBorderColor">
258+
<argument name="property" value="PageBuilderAdvancedBorderColorProperty_green"/>
259+
</actionGroup>
260+
<actionGroup ref="fillSlideOutPanelFieldGeneral" stepKey="enterBorderWidth">
261+
<argument name="property" value="PageBuilderAdvancedBorderWidthProperty10"/>
262+
</actionGroup>
263+
<actionGroup ref="fillSlideOutPanelFieldPadding" stepKey="enterPadding">
264+
<argument name="property" value="PageBuilderPaddingProperty10"/>
265+
</actionGroup>
266+
<actionGroup ref="saveEditPanelSettings" stepKey="saveEditPanelSettings"/>
267+
<!-- Add tall content to container -->
268+
<comment userInput="Add tall content to container" stepKey="commentAddTallContentToContainer"/>
269+
<actionGroup ref="expandPageBuilderPanelGroup" stepKey="expandPageBuilderPanelGroup">
270+
<argument name="group" value="PageBuilderHeadingContentType"/>
271+
</actionGroup>
272+
<actionGroup ref="dragContentTypeToStage" stepKey="dragContentTypeToContainer">
273+
<argument name="contentType" value="PageBuilderHeadingContentType"/>
274+
</actionGroup>
275+
<pressKey selector="{{HeadingOnStage.headingEditableText('1')}}" userInput="{{PageBuilderHeadingTextProperty.value}}" stepKey="enterHeadingText1"/>
276+
<actionGroup ref="clickOutsideLiveEditHeading" stepKey="clickOutsideLiveEditHeading"/>
277+
<actionGroup ref="duplicateContentType" stepKey="duplicateContentType">
278+
<argument name="contentType" value="PageBuilderHeadingContentType"/>
279+
</actionGroup>
280+
<actionGroup ref="duplicateContentType" stepKey="duplicateContentType2">
281+
<argument name="contentType" value="PageBuilderHeadingContentType"/>
282+
</actionGroup>
283+
<actionGroup ref="duplicateContentType" stepKey="duplicateContentType3">
284+
<argument name="contentType" value="PageBuilderHeadingContentType"/>
285+
</actionGroup>
286+
<actionGroup ref="duplicateContentType" stepKey="duplicateContentType4">
287+
<argument name="contentType" value="PageBuilderHeadingContentType"/>
288+
</actionGroup>
289+
<actionGroup ref="duplicateContentType" stepKey="duplicateContentType5">
290+
<argument name="contentType" value="PageBuilderHeadingContentType"/>
291+
</actionGroup>
292+
<!-- Validate height on stage before save -->
293+
<comment userInput="Validate height on stage before save" stepKey="commentValidateHeightOnStageBeforeSave"/>
294+
<actionGroup ref="validateContentTypeHeightGreaterThanMinHeight" stepKey="validateContentTypeHeightBeforeSave">
295+
<argument name="content" value="{{RowOnStage.baseCSS}}"/>
296+
<argument name="border" value="PageBuilderAdvancedBorderWidthProperty10"/>
297+
<argument name="padding" value="PageBuilderPaddingProperty10"/>
298+
</actionGroup>
299+
<actionGroup ref="saveAndContinueEditCmsPage" stepKey="saveAndContinueEditCmsPage"/>
300+
<actionGroup ref="switchToPageBuilderStage" stepKey="switchToPageBuilderStage"/>
301+
<!-- Validate height on stage after save -->
302+
<comment userInput="Validate height on stage after save" stepKey="commentValidateHeightOnStageAfterSave"/>
303+
<actionGroup ref="validateContentTypeHeightGreaterThanMinHeight" stepKey="validateContentTypeHeightAfterSave">
304+
<argument name="content" value="{{RowOnStage.baseCSS}}"/>
305+
<argument name="border" value="PageBuilderAdvancedBorderWidthProperty10"/>
306+
<argument name="padding" value="PageBuilderPaddingProperty10"/>
307+
</actionGroup>
308+
<actionGroup ref="navigateToStoreFront" stepKey="navigateToStoreFront">
309+
<argument name="contentType" value="PageBuilderRowContentType"/>
310+
</actionGroup>
311+
<!-- Validate height on storefront -->
312+
<comment userInput="Validate height on storefront" stepKey="commentValidateHeightOnStorefront"/>
313+
<actionGroup ref="validateContentTypeHeightGreaterThanMinHeight" stepKey="validateContentTypeHeightStorefront">
314+
<argument name="content" value="{{RowOnStorefront.baseCSS}}"/>
315+
</actionGroup>
316+
</test>
222317
<test name="RowContentIsVerticallyAligned">
223318
<annotations>
224319
<features value="PageBuilder"/>

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

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -207,6 +207,60 @@
207207
<argument name="content" value="{{TabOnStorefront.tabContentCSS}}"/>
208208
</actionGroup>
209209
</test>
210+
<test name="TabItemWithBordersPaddingAndLargeContentsGreaterThanMinHeight" extends="RowWithBordersPaddingAndLargeContentsGreaterThanMinHeight">
211+
<annotations>
212+
<features value="PageBuilder"/>
213+
<stories value="Tab"/>
214+
<title value="Tab item with borders, padding, and large content is greater than min height"/>
215+
<description value="A user can see Tab item height with borders, padding, and large content is greater than min height"/>
216+
<severity value="CRITICAL"/>
217+
<useCaseId value="MC-5079"/>
218+
<testCaseId value="MC-5804"/>
219+
<group value="pagebuilder"/>
220+
<group value="pagebuilder-tabs"/>
221+
<group value="pagebuilder-tabsLayout"/>
222+
</annotations>
223+
<before>
224+
<actionGroup ref="LoginAsAdmin" stepKey="loginAsAdmin"/>
225+
<actionGroup ref="navigateToAPageWithPageBuilder" stepKey="navigateToAPageWithPageBuilder"/>
226+
<actionGroup ref="switchToPageBuilderStage" stepKey="switchToPageBuilderStage"/>
227+
</before>
228+
<after>
229+
<actionGroup ref="logout" stepKey="logout"/>
230+
</after>
231+
<actionGroup ref="addPageBuilderPageTitle" stepKey="enterPageTitle">
232+
<argument name="contentType" value="PageBuilderTabsContentType"/>
233+
</actionGroup>
234+
<actionGroup ref="dragContentTypeToStage" after="commentConfigureContentType" stepKey="dragContentTypeToStage">
235+
<argument name="contentType" value="PageBuilderTabsContentType"/>
236+
</actionGroup>
237+
<actionGroup ref="openPageBuilderEditPanelSmallByIndex" stepKey="openEditPanel">
238+
<argument name="section" value="TabOnStage"/>
239+
</actionGroup>
240+
<actionGroup ref="expandPageBuilderPanelGroup" stepKey="expandPageBuilderPanelGroup">
241+
<argument name="group" value="PageBuilderHeadingContentType"/>
242+
</actionGroup>
243+
<actionGroup ref="dragContentTypeToContainer" stepKey="dragContentTypeToContainer">
244+
<argument name="contentType" value="PageBuilderHeadingContentType"/>
245+
<argument name="containerTargetType" value="PageBuilderTabsContentType"/>
246+
</actionGroup>
247+
<actionGroup ref="validateContentTypeHeightGreaterThanMinHeight" stepKey="validateContentTypeHeightBeforeSave">
248+
<argument name="content" value="{{TabOnStage.tabContentCSS}}"/>
249+
<argument name="border" value="PageBuilderAdvancedBorderWidthProperty10"/>
250+
<argument name="padding" value="PageBuilderPaddingProperty10"/>
251+
</actionGroup>
252+
<actionGroup ref="validateContentTypeHeightGreaterThanMinHeight" stepKey="validateContentTypeHeightAfterSave">
253+
<argument name="content" value="{{TabOnStage.tabContentCSS}}"/>
254+
<argument name="border" value="PageBuilderAdvancedBorderWidthProperty10"/>
255+
<argument name="padding" value="PageBuilderPaddingProperty10"/>
256+
</actionGroup>
257+
<actionGroup ref="navigateToStoreFront" stepKey="navigateToStoreFront">
258+
<argument name="contentType" value="PageBuilderTabsContentType"/>
259+
</actionGroup>
260+
<actionGroup ref="validateContentTypeHeightGreaterThanMinHeight" stepKey="validateContentTypeHeightStorefront">
261+
<argument name="content" value="{{TabOnStorefront.tabContentCSS}}"/>
262+
</actionGroup>
263+
</test>
210264
<test name="TabContentIsVerticallyAlignedTop">
211265
<annotations>
212266
<features value="PageBuilder"/>

0 commit comments

Comments
 (0)