* Dariusz RumiƄski * * This source file is subject to the MIT license that is bundled * with this source code in the file LICENSE. */ namespace PhpCsFixer\Tests; use PhpCsFixer\AbstractDoctrineAnnotationFixer; use PhpCsFixer\ConfigurationException\InvalidFixerConfigurationException; use PhpCsFixer\Tests\Test\AbstractFixerTestCase; /** * @internal * * @template TFixer of AbstractDoctrineAnnotationFixer * * @extends AbstractFixerTestCase */ abstract class AbstractDoctrineAnnotationFixerTestCase extends AbstractFixerTestCase { /** * @param array $configuration * * @dataProvider provideConfigureWithInvalidConfigurationCases */ public function testConfigureWithInvalidConfiguration(array $configuration): void { $this->expectException(InvalidFixerConfigurationException::class); $this->fixer->configure($configuration); } /** * @return iterable}> */ public static function provideConfigureWithInvalidConfigurationCases(): iterable { yield [['foo' => 'bar']]; yield [['ignored_tags' => 'foo']]; } /** * @param list $commentCases * * @return iterable */ protected static function createTestCases(array $commentCases): iterable { $noFixCases = []; foreach ($commentCases as $commentCase) { yield [ self::withClassDocBlock($commentCase[0]), isset($commentCase[1]) ? self::withClassDocBlock($commentCase[1]) : null, ]; yield [ self::withPropertyDocBlock($commentCase[0]), isset($commentCase[1]) ? self::withPropertyDocBlock($commentCase[1]) : null, ]; yield [ self::withMethodDocBlock($commentCase[0]), isset($commentCase[1]) ? self::withMethodDocBlock($commentCase[1]) : null, ]; $noFixCases[$commentCase[0]] = [ self::withWrongElementDocBlock($commentCase[0]), ]; } yield from array_values($noFixCases); } private static function withClassDocBlock(string $comment): string { return self::with('