Skip to content

Commit a136e1f

Browse files
ENGCOM-8396: #30009 Resolve regression from CSP updates #30010
2 parents a04fb36 + 2d9b187 commit a136e1f

File tree

5 files changed

+72
-2
lines changed

5 files changed

+72
-2
lines changed
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
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="AdminCreateSpecificEntityWidgetActionGroup" extends="AdminCreateWidgetActionGroup">
12+
<annotations>
13+
<description>Fill widget main fields and widget layout by index for anchor categories DisplayOn option</description>
14+
</annotations>
15+
<selectOption selector="{{AdminNewWidgetSection.specificEntitySelectContainer}}" userInput="{{widget.container}}" stepKey="setContainer"/>
16+
<seeElement selector="{{AdminNewWidgetSection.specificEntitySelectRadio}}" stepKey="seeSpecificEntityRadio" after="waitForPageLoad"/>
17+
<click selector="{{AdminNewWidgetSection.specificEntitySelectRadio}}" stepKey="clickSpecificEntityRadio" after="seeSpecificEntityRadio"/>
18+
<seeElement selector="{{AdminNewWidgetSection.specificEntityOptionsChooser}}" stepKey="seeChooserTrigger" after="clickSpecificEntityRadio"/>
19+
<click selector="{{AdminNewWidgetSection.specificEntityOptionsChooser}}" stepKey="clickChooserTrigger" after="seeChooserTrigger"/>
20+
<waitForAjaxLoad stepKey="waitForAjaxCategoryLoad" after="clickChooserTrigger"/>
21+
</actionGroup>
22+
</actionGroups>

app/code/Magento/Widget/Test/Mftf/Data/WidgetsData.xml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,20 @@
2020
<data key="display_on">All Pages</data>
2121
<data key="container">Main Content Area</data>
2222
</entity>
23+
<entity name="CatalogCategoryLinkSpecifiedCategory" type="widget">
24+
<data key="type">Catalog Category Link</data>
25+
<data key="design_theme">Magento Luma</data>
26+
<data key="name" unique="suffix">TestCategoryLinkWidgetOnSpecifiedCategory</data>
27+
<array key="store_ids">
28+
<item>All Store Views</item>
29+
</array>
30+
<data key="sort_order">0</data>
31+
<data key="page">catalog_category_view</data>
32+
<data key="template">Category Link Block Template</data>
33+
<data key="condition">SKU</data>
34+
<data key="display_on">Anchor Categories</data>
35+
<data key="container">Main Content Area</data>
36+
</entity>
2337
<entity name="DynamicBlocksRotatorWidget" type="widget">
2438
<data key="type">Dynamic Blocks Rotator</data>
2539
<data key="design_theme">Magento Luma</data>

app/code/Magento/Widget/Test/Mftf/Section/AdminNewWidgetSection.xml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,9 @@
4343
<element name="displayMode" type="select" selector="select[id*='display_mode']"/>
4444
<element name="restrictTypes" type="select" selector="select[id*='types']"/>
4545
<element name="saveAndContinue" type="button" selector="#save_and_edit_button" timeout="30"/>
46+
<element name="specificEntitySelectContainer" type="select" selector="select[name='widget_instance[0][anchor_categories][block]']"/>
47+
<element name="specificEntitySelectRadio" type="input" selector="#specific_anchor_categories_0"/>
48+
<element name="specificEntityOptionsChooser" type="button" selector="#anchor_categories_ids_0 .widget-option-chooser"/>
4649
<element name="widgetInstanceType" type="select" selector=".admin__field-control select#instance_code" />
4750
<!-- Catalog Product List Widget Options -->
4851
<element name="title" type="input" selector="[name='parameters[title]']"/>
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
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+
<tests xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10+
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/testSchema.xsd">
11+
<test name="AdminContentWidgetsDisplayOnSpecificEntitiesTest">
12+
<annotations>
13+
<features value="Widget"/>
14+
<stories value="Widget parameter configuration"/>
15+
<title value="Admin content widgets display on specific entities test"/>
16+
<description value="Admin should be able to select specific entities for widgets"/>
17+
<severity value="CRITICAL"/>
18+
<group value="widget"/>
19+
</annotations>
20+
<before>
21+
<actionGroup ref="AdminLoginActionGroup" stepKey="LoginAsAdmin"/>
22+
</before>
23+
<after>
24+
<actionGroup ref="AdminLogoutActionGroup" stepKey="logout"/>
25+
</after>
26+
<amOnPage url="{{AdminNewWidgetPage.url}}" stepKey="createWidgetPage"/>
27+
<actionGroup ref="AdminCreateSpecificEntityWidgetActionGroup" stepKey="fillForm">
28+
<argument name="widget" value="CatalogCategoryLinkSpecifiedCategory"/>
29+
</actionGroup>
30+
</test>
31+
</tests>

app/code/Magento/Widget/view/adminhtml/templates/instance/edit/layout.phtml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -86,14 +86,14 @@ script;
8686
$scriptString1 = $secureRenderer->renderEventListenerAsTag(
8787
"onclick",
8888
"WidgetInstance.togglePageGroupChooser(this)",
89-
"all_" . $escaper->escapeJs($container['name']) . "_<%- data.id %>"
89+
"#all_" . $escaper->escapeJs($container['name']) . "_<%- data.id %>"
9090
);
9191
$scriptString .= "'" . $escaper->escapeJs($scriptString1) . "'+" . PHP_EOL;
9292

9393
$scriptString1 = $secureRenderer->renderEventListenerAsTag(
9494
"onclick",
9595
"WidgetInstance.togglePageGroupChooser(this)",
96-
"specific_" . $escaper->escapeJs($container['name']) . "_<%- data.id %>"
96+
"#specific_" . $escaper->escapeJs($container['name']) . "_<%- data.id %>"
9797
);
9898
$scriptString .= "'" . $escaper->escapeJs($scriptString1) . "'+" . PHP_EOL;
9999

0 commit comments

Comments
 (0)