123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149 |
- <?php
- declare(strict_types=1);
- /*
- * This file is part of PHP CS Fixer.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- * Dariusz Rumiński <dariusz.ruminski@gmail.com>
- *
- * This source file is subject to the MIT license that is bundled
- * with this source code in the file LICENSE.
- */
- namespace PhpCsFixer\Tests\Fixer\Comment;
- use PhpCsFixer\Tests\Test\AbstractFixerTestCase;
- /**
- * @internal
- *
- * @covers \PhpCsFixer\Fixer\Comment\SingleLineCommentSpacingFixer
- *
- * @extends AbstractFixerTestCase<\PhpCsFixer\Fixer\Comment\SingleLineCommentSpacingFixer>
- */
- final class SingleLineCommentSpacingFixerTest extends AbstractFixerTestCase
- {
- /**
- * @dataProvider provideFixCases
- */
- public function testFix(string $expected, ?string $input = null): void
- {
- $this->doTest($expected, $input);
- }
- /**
- * @return iterable<int|string, array{0: string, 1?: string}>
- */
- public static function provideFixCases(): iterable
- {
- yield 'comment list' => [
- '<?php
- // following:
- // 1 :
- // 2 :
- # Test:
- # - abc
- # - fgh
- # Title:
- # | abc1
- # | xyz
- // Point:
- // * first point
- // * some other point
- // Matrix:
- // [1,2]
- // [3,4]
- ',
- ];
- yield [
- '<?php /* XYZ */',
- '<?php /* XYZ */',
- ];
- yield [
- '<?php // /',
- '<?php ///',
- ];
- yield [
- '<?php // //',
- '<?php ////',
- ];
- yield 'hash open slash asterisk close' => [
- '<?php # A*/',
- '<?php #A*/',
- ];
- yield [
- "<?php
- // a
- # b
- /* ABC */
- // \t d
- #\te
- /* f */
- ",
- "<?php
- //a
- #b
- /*ABC*/
- // \t d
- #\te
- /* f */
- ",
- ];
- yield 'do not fix multi line comments' => [
- '<?php
- /*
- */
- /*A
- B*/
- ',
- ];
- yield 'empty double slash' => [
- '<?php //',
- ];
- yield 'empty hash' => [
- '<?php #',
- ];
- yield [
- '<?php /**/',
- ];
- yield [
- '<?php /***/',
- ];
- yield 'do not fix PHPDocs' => [
- "<?php /**\n*/ /**\nX1*/ /** Y1 */",
- ];
- yield 'do not fix comments looking like PHPDocs' => [
- '<?php /**/ /**X1*/ /** Y1 */',
- ];
- yield 'do not fix annotation' => [
- '<?php
- namespace PhpCsFixer\Tests\Fixer\Basic;
- new
- #[Foo]
- class extends stdClass {};
- ',
- ];
- }
- }
|