/
githubmirror
/
symfony
Обзор
Документация
Войти
/
githubmirror
/
symfony
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
8.2
src/Symfony/Component/Config/Tests/Resource/ClassExistenceResourceTest.php
131 строка
4 KB
Dariusz Ruminski
PHP CS Fixer: enable static_lambda
19 дек 2025, 11:33
19 дек 2025, 11:33
3274fbc
Код
Авторство
О чём код?
<?php /* * This file is part of the Symfony package. * * (c) Fabien Potencier <fabien@symfony.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Config\Tests\Resource; use PHPUnit\Framework\TestCase; use Symfony\Component\Config\Resource\ClassExistenceResource; use Symfony\Component\Config\Tests\Fixtures\BadFileName; use Symfony\Component\Config\Tests\Fixtures\BadParent; use Symfony\Component\Config\Tests\Fixtures\ParseError; use Symfony\Component\Config\Tests\Fixtures\Resource\ConditionalClass; class ClassExistenceResourceTest extends TestCase { public function testToString() { $res = new ClassExistenceResource('BarClass'); $this->assertSame('BarClass', (string) $res); } public function testGetResource() { $res = new ClassExistenceResource('BarClass'); $this->assertSame('BarClass', $res->getResource()); } public function testIsFreshWhenClassDoesNotExist() { $res = new ClassExistenceResource('Symfony\Component\Config\Tests\Fixtures\BarClass'); $this->assertTrue($res->isFresh(time())); eval(<<<EOF namespace Symfony\Component\Config\Tests\Fixtures; class BarClass { } EOF ); $this->assertFalse($res->isFresh(time())); } public function testIsFreshWhenClassExists() { $res = new ClassExistenceResource('Symfony\Component\Config\Tests\Resource\ClassExistenceResourceTest'); $this->assertTrue($res->isFresh(time())); } public function testExistsKo() { spl_autoload_register($autoloader = static function ($class) use (&$loadedClass) { $loadedClass = $class; }); try { $res = new ClassExistenceResource('MissingFooClass'); $this->assertTrue($res->isFresh(0)); $this->assertSame('MissingFooClass', $loadedClass); $loadedClass = 123; new ClassExistenceResource('MissingFooClass', false); $this->assertSame(123, $loadedClass); } finally { spl_autoload_unregister($autoloader); } } public function testBadParentWithTimestamp() { $res = new ClassExistenceResource(BadParent::class, false); $this->assertTrue($res->isFresh(time())); } public function testBadParentWithNoTimestamp() { $res = new ClassExistenceResource(BadParent::class, false); $this->expectException(\ReflectionException::class); $this->expectExceptionMessage('Class "Symfony\Component\Config\Tests\Fixtures\MissingParent" not found while loading "Symfony\Component\Config\Tests\Fixtures\BadParent".'); $res->isFresh(0); } public function testBadFileName() { $res = new ClassExistenceResource(BadFileName::class, false); $this->expectException(\ReflectionException::class); $this->expectExceptionMessage('Mismatch between file name and class name.'); $res->isFresh(0); } public function testBadFileNameBis() { $res = new ClassExistenceResource(BadFileName::class, false); $this->expectException(\ReflectionException::class); $this->expectExceptionMessage('Mismatch between file name and class name.'); $res->isFresh(0); } public function testConditionalClass() { $res = new ClassExistenceResource(ConditionalClass::class, false); $this->assertFalse($res->isFresh(0)); } public function testParseError() { $res = new ClassExistenceResource(ParseError::class, false); $this->expectException(\ParseError::class); $res->isFresh(0); } }