Skip to content

Commit d0b9f8e

Browse files
magento/partners-magento2b2b#325: Automate Currency availability test for Company Credit
- Added data fixture for base currecy of second website
1 parent 51b53be commit d0b9f8e

File tree

2 files changed

+74
-0
lines changed

2 files changed

+74
-0
lines changed
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
<?php
2+
/**
3+
* Copyright © Magento, Inc. All rights reserved.
4+
* See COPYING.txt for license details.
5+
*/
6+
7+
use Magento\Store\Api\WebsiteRepositoryInterface;
8+
use Magento\TestFramework\Workaround\Override\Fixture\Resolver;
9+
10+
Resolver::getInstance()->requireDataFixture('Magento/Store/_files/second_website_with_two_stores.php');
11+
12+
$objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager();
13+
/** @var WebsiteRepositoryInterface $websiteRepository */
14+
$websiteRepository = $objectManager->get(WebsiteRepositoryInterface::class);
15+
$websiteId = $websiteRepository->get('test')->getId();
16+
/** @var \Magento\Config\Model\ResourceModel\Config $configResource */
17+
$configResource = $objectManager->get(\Magento\Config\Model\ResourceModel\Config::class);
18+
$configResource->saveConfig(
19+
\Magento\Directory\Model\Currency::XML_PATH_CURRENCY_BASE,
20+
'EUR',
21+
\Magento\Store\Model\ScopeInterface::SCOPE_WEBSITES,
22+
$websiteId
23+
);
24+
$configResource->saveConfig(
25+
\Magento\Catalog\Helper\Data::XML_PATH_PRICE_SCOPE,
26+
\Magento\Store\Model\Store::PRICE_SCOPE_WEBSITE,
27+
'default',
28+
0
29+
);
30+
31+
/**
32+
* Configuration cache clean is required to reload currency setting
33+
*/
34+
/** @var Magento\Config\App\Config\Type\System $config */
35+
$config = $objectManager->get(\Magento\Config\App\Config\Type\System::class);
36+
$config->clean();
37+
38+
$observer = $objectManager->get(\Magento\Framework\Event\Observer::class);
39+
$objectManager->get(\Magento\Catalog\Observer\SwitchPriceAttributeScopeOnConfigChange::class)
40+
->execute($observer);
41+
42+
/** @var \Magento\Directory\Model\ResourceModel\Currency $rate */
43+
$rate = $objectManager->create(\Magento\Directory\Model\ResourceModel\Currency::class);
44+
$rate->saveRates([
45+
'USD' => ['EUR' => 2],
46+
'EUR' => ['USD' => 0.5]
47+
]);
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
<?php
2+
/**
3+
* Copyright © Magento, Inc. All rights reserved.
4+
* See COPYING.txt for license details.
5+
*/
6+
use Magento\TestFramework\Workaround\Override\Fixture\Resolver;
7+
8+
$objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager();
9+
/** @var \Magento\Config\Model\ResourceModel\Config $configResource */
10+
$configResource = $objectManager->get(\Magento\Config\Model\ResourceModel\Config::class);
11+
$configResource->deleteConfig(
12+
\Magento\Catalog\Helper\Data::XML_PATH_PRICE_SCOPE,
13+
'default',
14+
0
15+
);
16+
$website = $objectManager->create(\Magento\Store\Model\Website::class);
17+
/** @var $website \Magento\Store\Model\Website */
18+
$websiteId = $website->load('test', 'code')->getId();
19+
if ($websiteId) {
20+
$configResource->deleteConfig(
21+
\Magento\Directory\Model\Currency::XML_PATH_CURRENCY_BASE,
22+
\Magento\Store\Model\ScopeInterface::SCOPE_WEBSITES,
23+
$websiteId
24+
);
25+
}
26+
27+
Resolver::getInstance()->requireDataFixture('Magento/Store/_files/second_website_with_two_stores_rollback.php');

0 commit comments

Comments
 (0)