/
githubmirror
/
magento2
Обзор
Документация
Войти
/
githubmirror
/
magento2
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
2.4-develop
dev/tests/integration/testsuite/Magento/PageCache/Model/ConfigTest.php
91 строка
4 KB
Alexandra Zota
ACP2E-4019: CE copyright updates for 2.4.9-beta1
22 окт 2025, 10:44
22 окт 2025, 10:44
264bea2
Код
Авторство
О чём код?
<?php /** * Copyright 2017 Adobe * All Rights Reserved. */ namespace Magento\PageCache\Model; class ConfigTest extends \PHPUnit\Framework\TestCase { /** * @var \Magento\PageCache\Model\Config */ private $config; protected function setUp(): void { $readFactoryMock = $this->createMock(\Magento\Framework\Filesystem\Directory\ReadFactory::class); $modulesDirectoryMock = $this->createMock(\Magento\Framework\Filesystem\Directory\Write::class); $readFactoryMock->expects( $this->any() )->method( 'create' )->willReturn( $modulesDirectoryMock ); $modulesDirectoryMock->expects( $this->any() )->method( 'readFile' )->willReturn( file_get_contents(__DIR__ . '/_files/test.vcl') ); /** @var \PHPUnit\Framework\MockObject\MockObject $vclTemplateLocator */ $vclTemplateLocator = $this->getMockBuilder(\Magento\PageCache\Model\Varnish\VclTemplateLocator::class) ->disableOriginalConstructor() ->onlyMethods(['getTemplate']) ->getMock(); $vclTemplateLocator->expects($this->any()) ->method('getTemplate') ->willReturn(file_get_contents(__DIR__ . '/_files/test.vcl')); /** @var \PHPUnit\Framework\MockObject\MockObject $vclTemplateLocator */ $vclGeneratorFactory = $this->getMockBuilder(\Magento\PageCache\Model\Varnish\VclGeneratorFactory::class) ->disableOriginalConstructor() ->onlyMethods(['create']) ->getMock(); $expectedParams = [ 'backendHost' => 'example.com', 'backendPort' => '8080', 'accessList' => explode(',', '127.0.0.1,192.168.0.1,127.0.0.2'), 'designExceptions' => json_decode('{"_":{"regexp":"\/firefox\/i","value":"Magento\/blank"}}', true), 'sslOffloadedHeader' => 'X-Forwarded-Proto', 'gracePeriod' => 1234 ]; $vclGeneratorFactory->expects($this->any()) ->method('create') ->with($expectedParams) ->willReturn(new \Magento\PageCache\Model\Varnish\VclGenerator( $vclTemplateLocator, 'example.com', '8080', explode(',', '127.0.0.1,192.168.0.1,127.0.0.2'), 1234, 'X-Forwarded-Proto', json_decode('{"_":{"regexp":"\/firefox\/i","value":"Magento\/blank"}}', true) )); $this->config = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create( \Magento\PageCache\Model\Config::class, [ 'vclGeneratorFactory' => $vclGeneratorFactory ] ); } // @codingStandardsIgnoreStart /** * @magentoConfigFixture default/system/full_page_cache/varnish/backend_host example.com * @magentoConfigFixture default/system/full_page_cache/varnish/backend_port 8080 * @magentoConfigFixture default/system/full_page_cache/varnish/grace_period 1234 * @magentoConfigFixture default/system/full_page_cache/varnish/access_list 127.0.0.1,192.168.0.1,127.0.0.2 * @magentoConfigFixture current_store design/theme/ua_regexp {"_":{"regexp":"\/firefox\/i","value":"Magento\/blank"}} * @magentoAppIsolation enabled */ // @codingStandardsIgnoreEnd public function testGetVclFile() { $result = $this->config->getVclFile(Config::VARNISH_6_CONFIGURATION_PATH); $this->assertEquals(file_get_contents(__DIR__ . '/_files/result.vcl'), $result); } }