Skip to content

Commit 1b45c07

Browse files
committed
ACPT-1572: Slow saving of stores/websites
- Fix static and integration tests;
1 parent f6d720e commit 1b45c07

File tree

4 files changed

+29
-11
lines changed

4 files changed

+29
-11
lines changed

app/code/Magento/Store/Model/Website.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,9 +44,9 @@ class Website extends \Magento\Framework\Model\AbstractExtensibleModel implement
4444
\Magento\Framework\App\ScopeInterface,
4545
\Magento\Store\Api\Data\WebsiteInterface
4646
{
47-
const ENTITY = 'store_website';
47+
public const ENTITY = 'store_website';
4848

49-
const CACHE_TAG = 'website';
49+
public const CACHE_TAG = 'website';
5050

5151
/**
5252
* @var bool

app/code/Magento/Store/composer.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,8 @@
1414
"magento/module-ui": "*",
1515
"magento/module-customer": "*",
1616
"magento/module-authorization": "*",
17-
"magento/module-backend": "*"
17+
"magento/module-backend": "*",
18+
"magento/module-page-cache": "*"
1819
},
1920
"suggest": {
2021
"magento/module-deploy": "*"

dev/tests/integration/testsuite/Magento/Customer/Ui/Component/Listing/AttributeRepositoryTest.php

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,9 @@
77

88
namespace Magento\Customer\Ui\Component\Listing;
99

10+
use Magento\Framework\App\Cache\Manager;
1011
use Magento\TestFramework\Helper\Bootstrap;
12+
use Magento\TestFramework\ObjectManager;
1113
use PHPUnit\Framework\TestCase;
1214

1315
/**
@@ -22,12 +24,18 @@ class AttributeRepositoryTest extends TestCase
2224
*/
2325
private $model;
2426

27+
/**
28+
* @var ObjectManager
29+
*/
30+
private $objectManager;
31+
2532
/**
2633
* @inheritdoc
2734
*/
2835
protected function setUp(): void
2936
{
30-
$this->model = Bootstrap::getObjectManager()->create(AttributeRepository::class);
37+
$this->objectManager = Bootstrap::getObjectManager();
38+
$this->model = $this->objectManager->create(AttributeRepository::class);
3139
}
3240

3341
/**
@@ -38,6 +46,9 @@ protected function setUp(): void
3846
*/
3947
public function testGetOptionArray(): void
4048
{
49+
$cache = $this->objectManager->get(Manager::class);
50+
$cache->clean(['full_page', 'config']);
51+
4152
$result = $this->model->getMetadataByCode('store_id');
4253

4354
$this->assertTrue(isset($result['options']['1']['value']));

dev/tests/integration/testsuite/Magento/Store/_files/second_website_with_two_stores.php

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,20 @@
33
* Copyright © Magento, Inc. All rights reserved.
44
* See COPYING.txt for license details.
55
*/
6-
$website = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(\Magento\Store\Model\Website::class);
6+
7+
use Magento\Framework\App\Cache\Manager;
8+
9+
$objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager();
10+
$website = $objectManager->create(\Magento\Store\Model\Website::class);
711
/** @var $website \Magento\Store\Model\Website */
812
if (!$website->load('test', 'code')->getId()) {
913
$website->setData(['code' => 'test', 'name' => 'Test Website', 'default_group_id' => '1', 'is_default' => '0']);
1014
$website->save();
1115
}
1216
$websiteId = $website->getId();
13-
$store = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(\Magento\Store\Model\Store::class);
17+
$store = $objectManager->create(\Magento\Store\Model\Store::class);
1418
if (!$store->load('fixture_second_store', 'code')->getId()) {
15-
$groupId = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get(
19+
$groupId = $objectManager->get(
1620
\Magento\Store\Model\StoreManagerInterface::class
1721
)->getWebsite()->getDefaultGroupId();
1822
$store->setCode(
@@ -31,9 +35,9 @@
3135
$store->save();
3236
}
3337

34-
$store = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(\Magento\Store\Model\Store::class);
38+
$store = $objectManager->create(\Magento\Store\Model\Store::class);
3539
if (!$store->load('fixture_third_store', 'code')->getId()) {
36-
$groupId = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get(
40+
$groupId = $objectManager->get(
3741
\Magento\Store\Model\StoreManagerInterface::class
3842
)->getWebsite()->getDefaultGroupId();
3943
$store->setCode(
@@ -54,6 +58,8 @@
5458

5559
/* Refresh CatalogSearch index */
5660
/** @var \Magento\Framework\Indexer\IndexerRegistry $indexerRegistry */
57-
$indexerRegistry = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()
58-
->create(\Magento\Framework\Indexer\IndexerRegistry::class);
61+
$indexerRegistry = $objectManager->create(\Magento\Framework\Indexer\IndexerRegistry::class);
5962
$indexerRegistry->get(\Magento\CatalogSearch\Model\Indexer\Fulltext::INDEXER_ID)->reindexAll();
63+
64+
$cache = $objectManager->get(Manager::class);
65+
$cache->clean(['full_page', 'config']);

0 commit comments

Comments
 (0)