Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
ConsolidatedConfigTest.php
Go to the documentation of this file.
1 <?php
7 
11 
15 class ConsolidatedConfigTest extends \PHPUnit\Framework\TestCase
16 {
22  private $configModel;
23 
27  private $configCacheTypeMock;
28 
32  private $configReaderMock;
33 
37  private $serializer;
38 
39  protected function setUp()
40  {
41  $this->configCacheTypeMock = $this->getMockBuilder(\Magento\Integration\Model\Cache\TypeConsolidated::class)
42  ->disableOriginalConstructor()
43  ->getMock();
44  $this->configReaderMock = $this->getMockBuilder(\Magento\Integration\Model\Config\Consolidated\Reader::class)
45  ->disableOriginalConstructor()
46  ->getMock();
47  $this->serializer = $this->getMockBuilder(SerializerInterface::class)
48  ->disableOriginalConstructor()
49  ->getMock();
50  $objectManagerHelper = new \Magento\Framework\TestFramework\Unit\Helper\ObjectManager($this);
51  $this->configModel = $objectManagerHelper->getObject(
52  \Magento\Integration\Model\ConsolidatedConfig::class,
53  [
54  'configCacheType' => $this->configCacheTypeMock,
55  'configReader' => $this->configReaderMock,
56  'serializer' => $this->serializer,
57  ]
58  );
59  }
60 
62  {
63  $integrations = ['foo', 'bar', 'baz'];
64  $serializedIntegrations = '["foo","bar","baz"]';
65  $this->configCacheTypeMock->expects($this->once())
66  ->method('load')
67  ->with(Config::CACHE_ID)
68  ->will($this->returnValue($serializedIntegrations));
69  $this->serializer->expects($this->once())
70  ->method('unserialize')
71  ->with($serializedIntegrations)
72  ->willReturn($integrations);
73 
74  $this->assertEquals($integrations, $this->configModel->getIntegrations());
75  }
76 
78  {
79  $integrations = ['foo', 'bar', 'baz'];
80  $serializedIntegrations = '["foo","bar","baz"]';
81  $this->configCacheTypeMock->expects($this->once())
82  ->method('load')
83  ->with(Config::CACHE_ID)
84  ->will($this->returnValue(null));
85  $this->configReaderMock->expects($this->once())
86  ->method('read')
87  ->will($this->returnValue($integrations));
88  $this->serializer->expects($this->once())
89  ->method('serialize')
90  ->with($integrations)
91  ->willReturn($serializedIntegrations);
92  $this->configCacheTypeMock->expects($this->once())
93  ->method('save')
94  ->with($serializedIntegrations, Config::CACHE_ID, [Type::CACHE_TAG]);
95 
96  $this->assertEquals($integrations, $this->configModel->getIntegrations());
97  }
98 }