Skip to content

Commit b8ab61b

Browse files
committed
Merge remote-tracking branch 'mainline/2.3-develop' into issue-21916-elasticsearch6-generation-does-not-exist
2 parents 75684ca + 8a4e356 commit b8ab61b

File tree

558 files changed

+19577
-11968
lines changed

Some content is hidden

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

558 files changed

+19577
-11968
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,8 @@ atlassian*
4848
/pub/media/import/*
4949
!/pub/media/import/.htaccess
5050
/pub/media/logo/*
51+
/pub/media/custom_options/*
52+
!/pub/media/custom_options/.htaccess
5153
/pub/media/theme/*
5254
/pub/media/theme_customization/*
5355
!/pub/media/theme_customization/.htaccess

.htaccess

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,11 @@
2727
#AddType x-mapp-php5 .php
2828
#AddHandler x-mapp-php5 .php
2929

30+
############################################
31+
## enable usage of methods arguments in backtrace
32+
33+
SetEnv MAGE_DEBUG_SHOW_ARGS 1
34+
3035
############################################
3136
## default index file
3237

@@ -364,6 +369,15 @@
364369
Require all denied
365370
</IfVersion>
366371
</Files>
372+
<Files .user.ini>
373+
<IfVersion < 2.4>
374+
order allow,deny
375+
deny from all
376+
</IfVersion>
377+
<IfVersion >= 2.4>
378+
Require all denied
379+
</IfVersion>
380+
</Files>
367381

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

.htaccess.sample

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,11 @@
2727
#AddType x-mapp-php5 .php
2828
#AddHandler x-mapp-php5 .php
2929

30+
############################################
31+
## enable usage of methods arguments in backtrace
32+
33+
SetEnv MAGE_DEBUG_SHOW_ARGS 1
34+
3035
############################################
3136
## default index file
3237

@@ -341,6 +346,15 @@
341346
Require all denied
342347
</IfVersion>
343348
</Files>
349+
<Files .user.ini>
350+
<IfVersion < 2.4>
351+
order allow,deny
352+
deny from all
353+
</IfVersion>
354+
<IfVersion >= 2.4>
355+
Require all denied
356+
</IfVersion>
357+
</Files>
344358

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

CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -785,7 +785,7 @@ Tests:
785785
* Refactored controller actions in the Product area
786786
* Moved commands cache.php, indexer.php, log.php, test.php, compiler.php, singletenant\_compiler.php, generator.php, pack.php, deploy.php and file\_assembler.php to the new bin/magento CLI framework
787787
* Data Migration Tool
788-
* The Data Migraiton Tool is published in the separate [repository](https://github.com/magento/data-migration-tool-ce "Data Migration Tool repository")
788+
* The Data Migration Tool is published in the separate [repository](https://github.com/magento/data-migration-tool-ce "Data Migration Tool repository")
789789
* Fixed bugs
790790
* Fixed an issue where error appeared during placing order with virtual product
791791
* Fixed an issue where billing and shipping sections didn't contain address information on order print

app/bootstrap.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
* Environment initialization
99
*/
1010
error_reporting(E_ALL);
11+
stream_wrapper_unregister('phar');
1112
#ini_set('display_errors', 1);
1213

1314
/* PHP version validation */

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(

app/code/Magento/Analytics/Test/Mftf/Test/AdminAdvancedReportingButtonTest.xml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,9 @@
1313
<title value="AdvancedReportingButtonTest"/>
1414
<description value="Test log in to AdvancedReporting and tests AdvancedReportingButtonTest"/>
1515
<testCaseId value="MC-14800"/>
16+
<skip>
17+
<issueId value="MC-14800" />
18+
</skip>
1619
<severity value="CRITICAL"/>
1720
<group value="analytics"/>
1821
<group value="mtf_migrated"/>

app/code/Magento/Analytics/Test/Unit/Block/Adminhtml/System/Config/AdditionalCommentTest.php

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,15 @@ protected function setUp()
3939
->setMethods(['getComment', 'getLabel'])
4040
->disableOriginalConstructor()
4141
->getMock();
42+
43+
$objectManager = new ObjectManager($this);
44+
$escaper = $objectManager->getObject(\Magento\Framework\Escaper::class);
45+
$reflection = new \ReflectionClass($this->abstractElementMock);
46+
$reflection_property = $reflection->getProperty('_escaper');
47+
$reflection_property->setAccessible(true);
48+
$reflection_property->setValue($this->abstractElementMock, $escaper);
49+
50+
$this->abstractElementMock->setEscaper($escaper);
4251
$this->contextMock = $this->getMockBuilder(Context::class)
4352
->disableOriginalConstructor()
4453
->getMock();

app/code/Magento/Analytics/Test/Unit/Block/Adminhtml/System/Config/CollectionTimeLabelTest.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,14 @@ protected function setUp()
4646
->setMethods(['getComment'])
4747
->disableOriginalConstructor()
4848
->getMock();
49+
50+
$objectManager = new ObjectManager($this);
51+
$escaper = $objectManager->getObject(\Magento\Framework\Escaper::class);
52+
$reflection = new \ReflectionClass($this->abstractElementMock);
53+
$reflection_property = $reflection->getProperty('_escaper');
54+
$reflection_property->setAccessible(true);
55+
$reflection_property->setValue($this->abstractElementMock, $escaper);
56+
4957
$this->contextMock = $this->getMockBuilder(Context::class)
5058
->setMethods(['getLocaleDate'])
5159
->disableOriginalConstructor()

app/code/Magento/Analytics/Test/Unit/Block/Adminhtml/System/Config/SubscriptionStatusLabelTest.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,14 @@ protected function setUp()
5151
->setMethods(['getComment'])
5252
->disableOriginalConstructor()
5353
->getMock();
54+
55+
$objectManager = new ObjectManager($this);
56+
$escaper = $objectManager->getObject(\Magento\Framework\Escaper::class);
57+
$reflection = new \ReflectionClass($this->abstractElementMock);
58+
$reflection_property = $reflection->getProperty('_escaper');
59+
$reflection_property->setAccessible(true);
60+
$reflection_property->setValue($this->abstractElementMock, $escaper);
61+
5462
$this->formMock = $this->getMockBuilder(Form::class)
5563
->disableOriginalConstructor()
5664
->getMock();

app/code/Magento/Analytics/Test/Unit/Block/Adminhtml/System/Config/VerticalTest.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,14 @@ protected function setUp()
3939
->setMethods(['getComment', 'getLabel', 'getHint'])
4040
->disableOriginalConstructor()
4141
->getMock();
42+
43+
$objectManager = new ObjectManager($this);
44+
$escaper = $objectManager->getObject(\Magento\Framework\Escaper::class);
45+
$reflection = new \ReflectionClass($this->abstractElementMock);
46+
$reflection_property = $reflection->getProperty('_escaper');
47+
$reflection_property->setAccessible(true);
48+
$reflection_property->setValue($this->abstractElementMock, $escaper);
49+
4250
$this->contextMock = $this->getMockBuilder(Context::class)
4351
->disableOriginalConstructor()
4452
->getMock();

app/code/Magento/Backend/Block/Widget/Form/Container.php

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,8 @@ class Container extends \Magento\Backend\Block\Widget\Container
5656
protected $_template = 'Magento_Backend::widget/form/container.phtml';
5757

5858
/**
59+
* Initialize form.
60+
*
5961
* @return void
6062
*/
6163
protected function _construct()
@@ -83,7 +85,7 @@ protected function _construct()
8385
-1
8486
);
8587

86-
$objId = $this->getRequest()->getParam($this->_objectId);
88+
$objId = (int)$this->getRequest()->getParam($this->_objectId);
8789

8890
if (!empty($objId)) {
8991
$this->addButton(
@@ -151,11 +153,13 @@ public function getBackUrl()
151153
}
152154

153155
/**
156+
* Get URL for delete button.
157+
*
154158
* @return string
155159
*/
156160
public function getDeleteUrl()
157161
{
158-
return $this->getUrl('*/*/delete', [$this->_objectId => $this->getRequest()->getParam($this->_objectId)]);
162+
return $this->getUrl('*/*/delete', [$this->_objectId => (int)$this->getRequest()->getParam($this->_objectId)]);
159163
}
160164

161165
/**
@@ -183,6 +187,8 @@ public function getFormActionUrl()
183187
}
184188

185189
/**
190+
* Get form HTML.
191+
*
186192
* @return string
187193
*/
188194
public function getFormHtml()
@@ -192,6 +198,8 @@ public function getFormHtml()
192198
}
193199

194200
/**
201+
* Get form init scripts.
202+
*
195203
* @return string
196204
*/
197205
public function getFormInitScripts()
@@ -203,6 +211,8 @@ public function getFormInitScripts()
203211
}
204212

205213
/**
214+
* Get form scripts.
215+
*
206216
* @return string
207217
*/
208218
public function getFormScripts()
@@ -214,6 +224,8 @@ public function getFormScripts()
214224
}
215225

216226
/**
227+
* Get header width.
228+
*
217229
* @return string
218230
*/
219231
public function getHeaderWidth()
@@ -222,6 +234,8 @@ public function getHeaderWidth()
222234
}
223235

224236
/**
237+
* Get header css class.
238+
*
225239
* @return string
226240
*/
227241
public function getHeaderCssClass()
@@ -230,6 +244,8 @@ public function getHeaderCssClass()
230244
}
231245

232246
/**
247+
* Get header HTML.
248+
*
233249
* @return string
234250
*/
235251
public function getHeaderHtml()
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+
<actionGroups xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10+
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/actionGroupSchema.xsd">
11+
<actionGroup name="AssertAdminSuccessLoginActionGroup">
12+
<waitForElementVisible selector="{{AdminHeaderSection.adminUserAccountText}}" stepKey="waitForAdminAccountTextVisible" />
13+
</actionGroup>
14+
</actionGroups>
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
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="AssertMessageOnAdminLoginActionGroup">
12+
<arguments>
13+
<argument name="message" type="string" defaultValue="The account sign-in was incorrect or your account is disabled temporarily. Please wait and try again later." />
14+
<argument name="messageType" type="string" defaultValue="error" />
15+
</arguments>
16+
<see userInput="{{message}}" selector="{{AdminLoginMessagesSection.messageByType(messageType)}}" stepKey="verifyMessage" />
17+
</actionGroup>
18+
</actionGroups>
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="LoginAdminWithCredentialsActionGroup">
12+
<arguments>
13+
<argument name="adminUser" type="string" />
14+
<argument name="adminPassword" type="string" />
15+
</arguments>
16+
<amOnPage url="{{_ENV.MAGENTO_BACKEND_NAME}}" stepKey="navigateToAdmin"/>
17+
<fillField selector="{{AdminLoginFormSection.username}}" userInput="{{adminUser}}" stepKey="fillUsername"/>
18+
<fillField selector="{{AdminLoginFormSection.password}}" userInput="{{adminPassword}}" stepKey="fillPassword"/>
19+
<click selector="{{AdminLoginFormSection.signIn}}" stepKey="clickLogin"/>
20+
<closeAdminNotification stepKey="closeAdminNotification"/>
21+
</actionGroup>
22+
</actionGroups>

app/code/Magento/Backend/Test/Mftf/ActionGroup/LoginAsAdminActionGroup.xml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,11 @@
1010
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/actionGroupSchema.xsd">
1111
<actionGroup name="LoginAsAdmin">
1212
<arguments>
13-
<argument name="adminUser" defaultValue="_ENV"/>
13+
<argument name="adminUser" type="entity" defaultValue="DefaultAdminUser"/>
1414
</arguments>
1515
<amOnPage url="{{AdminLoginPage.url}}" stepKey="navigateToAdmin"/>
16-
<fillField selector="{{AdminLoginFormSection.username}}" userInput="{{adminUser.MAGENTO_ADMIN_USERNAME}}" stepKey="fillUsername"/>
17-
<fillField selector="{{AdminLoginFormSection.password}}" userInput="{{adminUser.MAGENTO_ADMIN_PASSWORD}}" stepKey="fillPassword"/>
16+
<fillField selector="{{AdminLoginFormSection.username}}" userInput="{{adminUser.username}}" stepKey="fillUsername"/>
17+
<fillField selector="{{AdminLoginFormSection.password}}" userInput="{{adminUser.password}}" stepKey="fillPassword"/>
1818
<click selector="{{AdminLoginFormSection.signIn}}" stepKey="clickLogin"/>
1919
<closeAdminNotification stepKey="closeAdminNotification"/>
2020
</actionGroup>

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,6 @@
1010
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Page/etc/SectionObject.xsd">
1111
<section name="AdminHeaderSection">
1212
<element name="pageTitle" type="text" selector=".page-header h1.page-title"/>
13+
<element name="adminUserAccountText" type="text" selector=".page-header .admin-user-account-text" />
1314
</section>
1415
</sections>
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+
<sections xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10+
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Page/etc/SectionObject.xsd">
11+
<section name="AdminLoginMessagesSection">
12+
<element name="messageByType" type="block" selector=".login-content .messages .message-{{messageType}}" parameterized="true" />
13+
</section>
14+
</sections>

0 commit comments

Comments
 (0)