Skip to content

Commit 036a0bc

Browse files
committed
MAGETWO-62783: Wrong address template used for order e-mails
1 parent 885eb5e commit 036a0bc

File tree

1 file changed

+103
-0
lines changed
  • dev/tests/integration/testsuite/Magento/Sales/Model/Order/Address

1 file changed

+103
-0
lines changed
Lines changed: 103 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,103 @@
1+
<?php
2+
/**
3+
* Copyright © 2013-2017 Magento, Inc. All rights reserved.
4+
* See COPYING.txt for license details.
5+
*/
6+
namespace Magento\Sales\Model\Order\Address;
7+
8+
use Magento\TestFramework\Helper\Bootstrap;
9+
use Magento\Framework\ObjectManagerInterface;
10+
use Magento\Sales\Model\Order\Address\Renderer as OrderAddressRenderer;
11+
use Magento\Config\Model\ResourceModel\Config as ConfigResourceModel;
12+
use Magento\Framework\App\Config;
13+
use Magento\Store\Model\Store;
14+
use Magento\Sales\Model\Order\Address as OrderAddress;
15+
use Magento\Sales\Model\Order;
16+
17+
class RendererTest extends \PHPUnit_Framework_TestCase
18+
{
19+
/**
20+
* @var ObjectManagerInterface
21+
*/
22+
private $objectManager;
23+
24+
/**
25+
* @var OrderAddressRenderer
26+
*/
27+
private $orderAddressRenderer;
28+
29+
/**
30+
* @var ConfigResourceModel
31+
*/
32+
private $configResourceModel;
33+
34+
/**
35+
* @var Config
36+
*/
37+
private $config;
38+
39+
protected function setUp()
40+
{
41+
$this->objectManager = Bootstrap::getObjectManager();
42+
$this->orderAddressRenderer = $this->objectManager->get(OrderAddressRenderer::class);
43+
$this->configResourceModel = $this->objectManager->get(ConfigResourceModel::class);
44+
$this->config = $this->objectManager->get(Config::class);
45+
}
46+
47+
/**
48+
* @magentoDataFixture Magento/Sales/_files/order_fixture_store.php
49+
* @magentoDbIsolation enabled
50+
* @magentoAppIsolation enabled
51+
*/
52+
public function testFormat()
53+
{
54+
$addressTemplates = [
55+
'text' => 'text_customized',
56+
'oneline' => 'oneline_customized',
57+
'html' => 'html_customized',
58+
'pdf' => 'pdf_customized'
59+
];
60+
61+
/** @var Store $store */
62+
$store = $this->objectManager->create(Store::class);
63+
$storeId = $store->load('fixturestore')->getStoreId();
64+
65+
$this->configResourceModel->saveConfig(
66+
'customer/address_templates/text',
67+
$addressTemplates['text'],
68+
'stores',
69+
$storeId
70+
);
71+
$this->configResourceModel->saveConfig(
72+
'customer/address_templates/oneline',
73+
$addressTemplates['oneline'],
74+
'stores',
75+
$storeId
76+
);
77+
$this->configResourceModel->saveConfig(
78+
'customer/address_templates/html',
79+
$addressTemplates['html'],
80+
'stores',
81+
$storeId
82+
);
83+
$this->configResourceModel->saveConfig(
84+
'customer/address_templates/pdf',
85+
$addressTemplates['pdf'],
86+
'stores',
87+
$storeId
88+
);
89+
$this->config->clean();
90+
91+
/** @var Order $order */
92+
$order = $this->objectManager->create(Order::class)
93+
->loadByIncrementId('100000004');
94+
95+
/** @var OrderAddress $address */
96+
$address = $order->getBillingAddress();
97+
98+
$this->assertEquals($addressTemplates['text'], $this->orderAddressRenderer->format($address, 'text'));
99+
$this->assertEquals($addressTemplates['oneline'], $this->orderAddressRenderer->format($address, 'oneline'));
100+
$this->assertEquals($addressTemplates['html'], $this->orderAddressRenderer->format($address, 'html'));
101+
$this->assertEquals($addressTemplates['pdf'], $this->orderAddressRenderer->format($address, 'pdf'));
102+
}
103+
}

0 commit comments

Comments
 (0)