1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- <?php
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- namespace Magento\Framework\App\Test\Unit\DeploymentConfig;
- use Magento\Framework\App\DeploymentConfig\FileReader;
- use Magento\Framework\App\Filesystem\DirectoryList;
- use Magento\Framework\Config\File\ConfigFilePool;
- use Magento\Framework\Filesystem\DriverInterface;
- use Magento\Framework\Filesystem\DriverPool;
- use \PHPUnit_Framework_MockObject_MockObject as Mock;
- /**
- * @inheritdoc
- */
- class FileReaderTest extends \PHPUnit\Framework\TestCase
- {
- /**
- * @var FileReader
- */
- private $model;
- /**
- * @var DirectoryList|Mock
- */
- private $dirListMock;
- /**
- * @var DriverPool|Mock
- */
- private $driverPoolMock;
- /**
- * @var ConfigFilePool|Mock
- */
- private $configFilePool;
- /**
- * @var DriverInterface|Mock
- */
- private $driverMock;
- protected function setUp()
- {
- $this->dirListMock = $this->getMockBuilder(DirectoryList::class)
- ->disableOriginalConstructor()
- ->getMock();
- $this->driverPoolMock = $this->getMockBuilder(DriverPool::class)
- ->disableOriginalConstructor()
- ->getMock();
- $this->configFilePool = $this->getMockBuilder(ConfigFilePool::class)
- ->disableOriginalConstructor()
- ->getMock();
- $this->driverMock = $this->getMockBuilder(DriverInterface::class)
- ->getMockForAbstractClass();
- $this->model = new FileReader(
- $this->dirListMock,
- $this->driverPoolMock,
- $this->configFilePool
- );
- }
- public function testLoad()
- {
- $fileKey = 'configKeyOne';
- $this->dirListMock->expects($this->exactly(2))
- ->method('getPath')
- ->with(DirectoryList::CONFIG)
- ->willReturn(__DIR__ . '/_files');
- $this->driverPoolMock->expects($this->exactly(2))
- ->method('getDriver')
- ->with(DriverPool::FILE)
- ->willReturn($this->driverMock);
- $this->configFilePool->expects($this->exactly(2))
- ->method('getPath')
- ->willReturnMap([['configKeyOne', 'config.php']]);
- $this->driverMock->expects($this->exactly(2))
- ->method('isExists')
- ->willReturnOnConsecutiveCalls(true, false);
- $this->configFilePool
- ->expects($this->any())
- ->method('getPath')
- ->willReturnMap([['configKeyOne', 'config.php']]);
- $this->assertSame(['fooKey' => 'foo', 'barKey' => 'bar'], $this->model->load($fileKey));
- $this->assertSame([], $this->model->load($fileKey));
- }
- }
|