/
githubmirror
/
symfony
Обзор
Документация
Войти
/
githubmirror
/
symfony
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
8.2
src/Symfony/Component/Routing/Tests/Loader/AttributeFileLoaderTest.php
129 строк
6 KB
Alexandre Daubois
Remove useless parent method calls in tests
24 сен 2024, 14:34
24 сен 2024, 14:34
b54596f
Код
Авторство
О чём код?
<?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\Routing\Tests\Loader; use PHPUnit\Framework\TestCase; use Symfony\Component\Config\FileLocator; use Symfony\Component\Routing\Loader\AttributeFileLoader; use Symfony\Component\Routing\Tests\Fixtures\AttributedClasses\FooClass; use Symfony\Component\Routing\Tests\Fixtures\AttributesFixtures\AttributesClassParamAfterCommaController; use Symfony\Component\Routing\Tests\Fixtures\AttributesFixtures\AttributesClassParamAfterParenthesisController; use Symfony\Component\Routing\Tests\Fixtures\AttributesFixtures\AttributesClassParamInlineAfterCommaController; use Symfony\Component\Routing\Tests\Fixtures\AttributesFixtures\AttributesClassParamInlineAfterParenthesisController; use Symfony\Component\Routing\Tests\Fixtures\AttributesFixtures\AttributesClassParamInlineQuotedAfterCommaController; use Symfony\Component\Routing\Tests\Fixtures\AttributesFixtures\AttributesClassParamInlineQuotedAfterParenthesisController; use Symfony\Component\Routing\Tests\Fixtures\AttributesFixtures\AttributesClassParamQuotedAfterCommaController; use Symfony\Component\Routing\Tests\Fixtures\AttributesFixtures\AttributesClassParamQuotedAfterParenthesisController; use Symfony\Component\Routing\Tests\Fixtures\OtherAnnotatedClasses\VariadicClass; use Symfony\Component\Routing\Tests\Fixtures\TraceableAttributeClassLoader; class AttributeFileLoaderTest extends TestCase { private AttributeFileLoader $loader; private TraceableAttributeClassLoader $classLoader; protected function setUp(): void { $this->classLoader = new TraceableAttributeClassLoader(); $this->loader = new AttributeFileLoader(new FileLocator(), $this->classLoader); } public function testLoad() { self::assertCount(0, $this->loader->load(__DIR__.'/../Fixtures/AttributedClasses/FooClass.php')); self::assertSame([FooClass::class], $this->classLoader->foundClasses); } public function testLoadTraitWithClassConstant() { self::assertCount(0, $this->loader->load(__DIR__.'/../Fixtures/AttributedClasses/FooTrait.php')); self::assertSame([], $this->classLoader->foundClasses); } public function testLoadFileWithoutStartTag() { $this->expectException(\InvalidArgumentException::class); $this->expectExceptionMessage('Did you forget to add the "<?php" start tag at the beginning of the file?'); $this->loader->load(__DIR__.'/../Fixtures/OtherAnnotatedClasses/NoStartTagClass.php'); } public function testLoadVariadic() { self::assertCount(1, $this->loader->load(__DIR__.'/../Fixtures/OtherAnnotatedClasses/VariadicClass.php')); self::assertSame([VariadicClass::class], $this->classLoader->foundClasses); } public function testLoadAbstractClass() { self::assertNull($this->loader->load(__DIR__.'/../Fixtures/AttributedClasses/AbstractClass.php')); self::assertSame([], $this->classLoader->foundClasses); } public function testSupports() { $fixture = __DIR__.'/../Fixtures/annotated.php'; $this->assertTrue($this->loader->supports($fixture), '->supports() returns true if the resource is loadable'); $this->assertFalse($this->loader->supports('foo.foo'), '->supports() returns true if the resource is loadable'); $this->assertTrue($this->loader->supports($fixture, 'attribute'), '->supports() checks the resource type if specified'); $this->assertFalse($this->loader->supports($fixture, 'foo'), '->supports() checks the resource type if specified'); } public function testLoadAttributesClassAfterComma() { self::assertCount(0, $this->loader->load(__DIR__.'/../Fixtures/AttributesFixtures/AttributesClassParamAfterCommaController.php')); self::assertSame([AttributesClassParamAfterCommaController::class], $this->classLoader->foundClasses); } public function testLoadAttributesInlineClassAfterComma() { self::assertCount(0, $this->loader->load(__DIR__.'/../Fixtures/AttributesFixtures/AttributesClassParamInlineAfterCommaController.php')); self::assertSame([AttributesClassParamInlineAfterCommaController::class], $this->classLoader->foundClasses); } public function testLoadAttributesQuotedClassAfterComma() { self::assertCount(0, $this->loader->load(__DIR__.'/../Fixtures/AttributesFixtures/AttributesClassParamQuotedAfterCommaController.php')); self::assertSame([AttributesClassParamQuotedAfterCommaController::class], $this->classLoader->foundClasses); } public function testLoadAttributesInlineQuotedClassAfterComma() { self::assertCount(0, $this->loader->load(__DIR__.'/../Fixtures/AttributesFixtures/AttributesClassParamInlineQuotedAfterCommaController.php')); self::assertSame([AttributesClassParamInlineQuotedAfterCommaController::class], $this->classLoader->foundClasses); } public function testLoadAttributesClassAfterParenthesis() { self::assertCount(0, $this->loader->load(__DIR__.'/../Fixtures/AttributesFixtures/AttributesClassParamAfterParenthesisController.php')); self::assertSame([AttributesClassParamAfterParenthesisController::class], $this->classLoader->foundClasses); } public function testLoadAttributesInlineClassAfterParenthesis() { self::assertCount(0, $this->loader->load(__DIR__.'/../Fixtures/AttributesFixtures/AttributesClassParamInlineAfterParenthesisController.php')); self::assertSame([AttributesClassParamInlineAfterParenthesisController::class], $this->classLoader->foundClasses); } public function testLoadAttributesQuotedClassAfterParenthesis() { self::assertCount(0, $this->loader->load(__DIR__.'/../Fixtures/AttributesFixtures/AttributesClassParamQuotedAfterParenthesisController.php')); self::assertSame([AttributesClassParamQuotedAfterParenthesisController::class], $this->classLoader->foundClasses); } public function testLoadAttributesInlineQuotedClassAfterParenthesis() { self::assertCount(0, $this->loader->load(__DIR__.'/../Fixtures/AttributesFixtures/AttributesClassParamInlineQuotedAfterParenthesisController.php')); self::assertSame([AttributesClassParamInlineQuotedAfterParenthesisController::class], $this->classLoader->foundClasses); } }