Skip to content

Commit b2a3c41

Browse files
author
Oleksandr Gorkun
committed
Merge branch '2.3-qwerty' into MC-11058
2 parents a9e69f7 + 62124e3 commit b2a3c41

File tree

626 files changed

+11267
-3522
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

626 files changed

+11267
-3522
lines changed

.htaccess

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -364,6 +364,15 @@
364364
Require all denied
365365
</IfVersion>
366366
</Files>
367+
<Files .user.ini>
368+
<IfVersion < 2.4>
369+
order allow,deny
370+
deny from all
371+
</IfVersion>
372+
<IfVersion >= 2.4>
373+
Require all denied
374+
</IfVersion>
375+
</Files>
367376

368377
# For 404s and 403s that aren't handled by the application, show plain 404 response
369378
ErrorDocument 404 /pub/errors/404.php

.htaccess.sample

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -341,6 +341,15 @@
341341
Require all denied
342342
</IfVersion>
343343
</Files>
344+
<Files .user.ini>
345+
<IfVersion < 2.4>
346+
order allow,deny
347+
deny from all
348+
</IfVersion>
349+
<IfVersion >= 2.4>
350+
Require all denied
351+
</IfVersion>
352+
</Files>
344353

345354
# For 404s and 403s that aren't handled by the application, show plain 404 response
346355
ErrorDocument 404 /pub/errors/404.php

app/code/Magento/AdminNotification/Block/Grid/Renderer/Actions.php

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,11 @@
88

99
namespace Magento\AdminNotification\Block\Grid\Renderer;
1010

11+
/**
12+
* Renderer class for action in the admin notifications grid
13+
*
14+
* @package Magento\AdminNotification\Block\Grid\Renderer
15+
*/
1116
class Actions extends \Magento\Backend\Block\Widget\Grid\Column\Renderer\AbstractRenderer
1217
{
1318
/**
@@ -37,7 +42,9 @@ public function __construct(
3742
*/
3843
public function render(\Magento\Framework\DataObject $row)
3944
{
40-
$readDetailsHtml = $row->getUrl() ? '<a class="action-details" target="_blank" href="' . $row->getUrl() . '">' .
45+
$readDetailsHtml = $row->getUrl() ? '<a class="action-details" target="_blank" href="' .
46+
$this->escapeUrl($row->getUrl())
47+
. '">' .
4148
__('Read Details') . '</a>' : '';
4249

4350
$markAsReadHtml = !$row->getIsRead() ? '<a class="action-mark" href="' . $this->getUrl(
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
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="SetAdminAccountActionGroup">
12+
<arguments>
13+
<argument name="InterfaceLocaleByValue" type="string"/>
14+
</arguments>
15+
<!-- Navigate to admin System Account Page-->
16+
<amOnPage url="{{AdminSystemAccountPage.url}}" stepKey="openAdminSystemAccountPage" />
17+
<waitForPageLoad stepKey="loadAdminSystemAccountPage"/>
18+
<!-- Change Admin locale to Français (France) / French (France) -->
19+
<selectOption userInput="{{InterfaceLocaleByValue}}" selector="{{AdminSystemAccountSection.interfaceLocale}}" stepKey="setInterfaceLocate"/>
20+
<fillField selector="{{AdminSystemAccountSection.currentPassword}}" userInput="{{_ENV.MAGENTO_ADMIN_PASSWORD}}" stepKey="fillPassword"/>
21+
<click selector="{{AdminCustomerMainActionsSection.saveButton}}" stepKey="clickSave"/>
22+
<waitForElement selector="{{AdminCustomerMessagesSection.successMessage}}" stepKey="waitSuccessMessage"/>
23+
</actionGroup>
24+
</actionGroups>

app/code/Magento/Backend/Test/Mftf/Page/AdminDashboardPage.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
-->
88

99
<pages xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10-
xsi:noNamespaceSchemaLocation="../../../../../../../dev/tests/acceptance/vendor/magento/magento2-functional-testing-framework/src/Magento/FunctionalTestingFramework/Page/etc/PageObject.xsd">
10+
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Page/etc/PageObject.xsd">
1111
<page name="AdminDashboardPage" url="admin/dashboard/" area="admin" module="Magento_Backend">
1212
<section name="AdminMenuSection"/>
1313
</page>
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
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+
<pages xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10+
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Page/etc/PageObject.xsd">
11+
<page name="AdminSystemAccountPage" url="admin/system_account/index/" area="admin" module="Magento_Backend">
12+
<section name="AdminSystemAccountSection"/>
13+
</page>
14+
</pages>

app/code/Magento/Backend/Test/Mftf/Section/AdminMenuSection.xml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,5 +16,10 @@
1616
<element name="widgets" type="button" selector="#nav li[data-ui-id='menu-magento-widget-cms-widget-instance']"/>
1717
<element name="stores" type="button" selector="#menu-magento-backend-stores"/>
1818
<element name="configuration" type="button" selector="#nav li[data-ui-id='menu-magento-config-system-config']"/>
19+
<element name="dashboard" type="button" selector="//li[@id='menu-magento-backend-dashboard']"/>
20+
<element name="sales" type="button" selector="//li[@id='menu-magento-sales-sales']"/>
21+
<element name="marketing" type="button" selector="//li[@id='menu-magento-backend-marketing']"/>
22+
<element name="system" type="button" selector="//li[@id='menu-magento-backend-system']"/>
23+
<element name="findPartners" type="button" selector="//li[@id='menu-magento-marketplace-partners']"/>
1924
</section>
2025
</sections>

app/code/Magento/Cms/Test/Mftf/Section/StorefrontHeaderSection.xml renamed to app/code/Magento/Backend/Test/Mftf/Section/AdminSystemAccountSection.xml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@
88

99
<sections xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
1010
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Page/etc/SectionObject.xsd">
11-
<section name="StorefrontHeaderSection">
11+
<section name="AdminSystemAccountSection">
12+
<element name="interfaceLocale" type="text" selector="#interface_locale"/>
13+
<element name="currentPassword" type="text" selector="#current_password"/>
1214
</section>
1315
</sections>

app/code/Magento/Backend/Test/Mftf/Section/LocaleOptionsSection.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,5 +11,6 @@
1111
<section name="LocaleOptionsSection">
1212
<element name="sectionHeader" type="text" selector="#general_locale-head"/>
1313
<element name="timezone" type="select" selector="#general_locale_timezone"/>
14+
<element name="useDefault" type="checkbox" selector="#general_locale_timezone_inherit"/>
1415
</section>
1516
</sections>
Lines changed: 116 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,116 @@
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="AdminAttributeTextSwatchesCanBeFiledTest">
12+
<annotations>
13+
<features value="Backend"/>
14+
<stories value="Unable to add more attributes in size"/>
15+
<title value="Check that attribute text swatches can be filed"/>
16+
<description value="Check that attribute text swatches can be filed"/>
17+
<severity value="MAJOR"/>
18+
<testCaseId value="MAGETWO-96710"/>
19+
<useCaseId value="MAGETWO-96409"/>
20+
<group value="backend"/>
21+
<group value="ui"/>
22+
</annotations>
23+
<before>
24+
25+
<actionGroup ref="LoginAsAdmin" stepKey="loginAsAdmin"/>
26+
27+
</before>
28+
<after>
29+
<!-- Delete all 10 store views -->
30+
<actionGroup ref="AdminDeleteStoreViewActionGroup" stepKey="deleteStoreView1">
31+
<argument name="customStore" value="customStore"/>
32+
</actionGroup>
33+
<actionGroup ref="AdminDeleteStoreViewActionGroup" stepKey="deleteStoreView2">
34+
<argument name="customStore" value="NewStoreViewData"/>
35+
</actionGroup>
36+
<actionGroup ref="AdminDeleteStoreViewActionGroup" stepKey="deleteStoreView3">
37+
<argument name="customStore" value="storeViewData"/>
38+
</actionGroup>
39+
<actionGroup ref="AdminDeleteStoreViewActionGroup" stepKey="deleteStoreView4">
40+
<argument name="customStore" value="storeViewData1"/>
41+
</actionGroup>
42+
<actionGroup ref="AdminDeleteStoreViewActionGroup" stepKey="deleteStoreView5">
43+
<argument name="customStore" value="storeViewData2"/>
44+
</actionGroup>
45+
<actionGroup ref="AdminDeleteStoreViewActionGroup" stepKey="deleteStoreView6">
46+
<argument name="customStore" value="storeViewData3"/>
47+
</actionGroup>
48+
<actionGroup ref="AdminDeleteStoreViewActionGroup" stepKey="deleteStoreView7">
49+
<argument name="customStore" value="storeViewData4"/>
50+
</actionGroup>
51+
<actionGroup ref="AdminDeleteStoreViewActionGroup" stepKey="deleteStoreView8">
52+
<argument name="customStore" value="storeViewData5"/>
53+
</actionGroup>
54+
<actionGroup ref="AdminDeleteStoreViewActionGroup" stepKey="deleteStoreView9">
55+
<argument name="customStore" value="storeViewData6"/>
56+
</actionGroup>
57+
<actionGroup ref="AdminDeleteStoreViewActionGroup" stepKey="deleteStoreView10">
58+
<argument name="customStore" value="storeViewData7"/>
59+
</actionGroup>
60+
61+
<actionGroup ref="logout" stepKey="logout"/>
62+
</after>
63+
64+
<!-- Create 10 store views -->
65+
<actionGroup ref="AdminCreateStoreViewActionGroup" stepKey="createStoreView1">
66+
<argument name="customStore" value="customStore"/>
67+
</actionGroup>
68+
<actionGroup ref="AdminCreateStoreViewActionGroup" stepKey="createStoreView2">
69+
<argument name="customStore" value="NewStoreViewData"/>
70+
</actionGroup>
71+
<actionGroup ref="AdminCreateStoreViewActionGroup" stepKey="createStoreView3">
72+
<argument name="customStore" value="storeViewData"/>
73+
</actionGroup>
74+
<actionGroup ref="AdminCreateStoreViewActionGroup" stepKey="createStoreView4">
75+
<argument name="customStore" value="storeViewData1"/>
76+
</actionGroup>
77+
<actionGroup ref="AdminCreateStoreViewActionGroup" stepKey="createStoreView5">
78+
<argument name="customStore" value="storeViewData2"/>
79+
</actionGroup>
80+
<actionGroup ref="AdminCreateStoreViewActionGroup" stepKey="createStoreView6">
81+
<argument name="customStore" value="storeViewData3"/>
82+
</actionGroup>
83+
<actionGroup ref="AdminCreateStoreViewActionGroup" stepKey="createStoreView7">
84+
<argument name="customStore" value="storeViewData4"/>
85+
</actionGroup>
86+
<actionGroup ref="AdminCreateStoreViewActionGroup" stepKey="createStoreView8">
87+
<argument name="customStore" value="storeViewData5"/>
88+
</actionGroup>
89+
<actionGroup ref="AdminCreateStoreViewActionGroup" stepKey="createStoreView9">
90+
<argument name="customStore" value="storeViewData6"/>
91+
</actionGroup>
92+
<actionGroup ref="AdminCreateStoreViewActionGroup" stepKey="createStoreView10">
93+
<argument name="customStore" value="storeViewData7"/>
94+
</actionGroup>
95+
96+
<!--Navigate to Product attribute page-->
97+
<amOnPage url="{{ProductAttributePage.url}}" stepKey="navigateToNewProductAttributePage"/>
98+
<waitForPageLoad stepKey="waitForPageLoad"/>
99+
<fillField userInput="test_label" selector="{{AttributePropertiesSection.DefaultLabel}}" stepKey="fillDefaultLabel"/>
100+
<selectOption selector="{{AttributePropertiesSection.InputType}}" userInput="Text Swatch" stepKey="selectInputType"/>
101+
<click selector="{{AttributePropertiesSection.addSwatch}}" stepKey="clickAddSwatch"/>
102+
<waitForAjaxLoad stepKey="waitForAjaxLoad"/>
103+
104+
<!-- Fill Swatch and Description fields for Admin -->
105+
<fillField selector="{{AttributeManageSwatchSection.swatchField('Admin')}}" userInput="test" stepKey="fillSwatchForAdmin"/>
106+
<fillField selector="{{AttributeManageSwatchSection.descriptionField('Admin')}}" userInput="test" stepKey="fillDescriptionForAdmin"/>
107+
108+
<!-- Grab value Swatch and Description fields for Admin -->
109+
<grabValueFrom selector="{{AttributeManageSwatchSection.swatchField('Admin')}}" stepKey="grabSwatchForAdmin"/>
110+
<grabValueFrom selector="{{AttributeManageSwatchSection.descriptionField('Admin')}}" stepKey="grabDescriptionForAdmin"/>
111+
112+
<!-- Check that Swatch and Description fields for Admin are not empty-->
113+
<assertNotEmpty actual="$grabSwatchForAdmin" stepKey="checkSwatchFieldForAdmin"/>
114+
<assertNotEmpty actual="$grabDescriptionForAdmin" stepKey="checkDescriptionFieldForAdmin"/>
115+
</test>
116+
</tests>

0 commit comments

Comments
 (0)