123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116 |
- <?php
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- namespace Magento\Customer\Test\Unit\Block;
- use Magento\Framework\App\Config\ScopeConfigInterface;
- use Magento\Framework\View\Element\Template\Context;
- use Magento\Store\Api\Data\StoreInterface;
- use Magento\Store\Model\StoreManagerInterface;
- use Magento\Customer\Block\CustomerScopeData;
- class CustomerScopeDataTest extends \PHPUnit\Framework\TestCase
- {
- /** @var \Magento\Customer\Block\CustomerScopeData */
- private $model;
- /** @var \Magento\Framework\View\Element\Template\Context|\PHPUnit_Framework_MockObject_MockObject */
- private $contextMock;
- /** @var StoreManagerInterface|\PHPUnit_Framework_MockObject_MockObject */
- private $storeManagerMock;
- /** @var ScopeConfigInterface|\PHPUnit_Framework_MockObject_MockObject */
- private $scopeConfigMock;
- /** @var \Magento\Framework\Json\EncoderInterface|\PHPUnit_Framework_MockObject_MockObject */
- private $encoderMock;
- /** @var \Magento\Framework\Serialize\Serializer\Json|\PHPUnit_Framework_MockObject_MockObject */
- private $serializerMock;
- protected function setUp()
- {
- $this->contextMock = $this->getMockBuilder(Context::class)
- ->disableOriginalConstructor()
- ->getMock();
- $this->storeManagerMock = $this->getMockBuilder(StoreManagerInterface::class)
- ->getMock();
- $this->scopeConfigMock = $this->getMockBuilder(ScopeConfigInterface::class)
- ->getMock();
- $this->encoderMock = $this->getMockBuilder(\Magento\Framework\Json\EncoderInterface::class)
- ->getMock();
- $this->serializerMock = $this->getMockBuilder(\Magento\Framework\Serialize\Serializer\Json::class)
- ->getMock();
- $this->contextMock->expects($this->exactly(2))
- ->method('getStoreManager')
- ->willReturn($this->storeManagerMock);
- $this->contextMock->expects($this->once())
- ->method('getScopeConfig')
- ->willReturn($this->scopeConfigMock);
- $this->model = new CustomerScopeData(
- $this->contextMock,
- $this->encoderMock,
- [],
- $this->serializerMock
- );
- }
- public function testGetWebsiteId()
- {
- $storeId = 1;
- $storeMock = $this->getMockBuilder(StoreInterface::class)
- ->setMethods(['getWebsiteId'])
- ->getMockForAbstractClass();
- $storeMock->expects($this->any())
- ->method('getWebsiteId')
- ->willReturn($storeId);
- $this->storeManagerMock->expects($this->any())
- ->method('getStore')
- ->with(null)
- ->willReturn($storeMock);
- $this->assertEquals($storeId, $this->model->getWebsiteId());
- }
- public function testEncodeConfiguration()
- {
- $rules = [
- '*' => [
- 'Magento_Customer/js/invalidation-processor' => [
- 'invalidationRules' => [
- 'website-rule' => [
- 'Magento_Customer/js/invalidation-rules/website-rule' => [
- 'scopeConfig' => [
- 'websiteId' => 1,
- ]
- ]
- ]
- ]
- ]
- ],
- ];
- $this->serializerMock->expects($this->any())
- ->method('serialize')
- ->with($rules)
- ->willReturn(json_encode($rules));
- $this->assertEquals(
- json_encode($rules),
- $this->model->encodeConfiguration($rules)
- );
- }
- }
|