Browse Source

minor #6229 Simplify Tokens::isMonolithicPhp tests (kubawerlos)

This PR was merged into the master branch.

Discussion
----------

Simplify Tokens::isMonolithicPhp tests

Simplifying tests cases (especially switching the order of boolean and code sample to make it easier to read).

Separate from this: https://github.com/werlos/PHP-CS-Fixer/compare/simplify_Tokens_isMonolithicPhp_tests...werlos:update_Tokens_isMonolithicPhp to make it easier to understand.

Commits
-------

18cc2b9ac Simplify tests
SpacePossum 3 years ago
parent
commit
8e7361283b
1 changed files with 28 additions and 62 deletions
  1. 28 62
      tests/Tokenizer/TokensTest.php

+ 28 - 62
tests/Tokenizer/TokensTest.php

@@ -343,74 +343,40 @@ PHP;
     /**
      * @dataProvider provideMonolithicPhpDetectionCases
      */
-    public function testMonolithicPhpDetection(string $source, bool $isMonolithic): void
+    public function testMonolithicPhpDetection(bool $isMonolithic, string $source): void
     {
         $tokens = Tokens::fromCode($source);
         static::assertSame($isMonolithic, $tokens->isMonolithicPhp());
     }
 
-    public function provideMonolithicPhpDetectionCases(): array
+    public function provideMonolithicPhpDetectionCases(): iterable
     {
-        return [
-            ["<?php\n", true],
-            ["<?php\n?>", true],
-            ['', false],
-            [' ', false],
-            ["#!/usr/bin/env php\n<?php\n", false],
-            [" <?php\n", false],
-            ["<?php\n?> ", false],
-            ["<?php\n?><?php\n", false],
-        ];
-    }
-
-    /**
-     * @dataProvider provideShortOpenTagMonolithicPhpDetectionCases
-     */
-    public function testShortOpenTagMonolithicPhpDetection(string $source, bool $monolithic): void
-    {
-        if (!ini_get('short_open_tag')) {
-            $monolithic = false;
-        }
-
-        $tokens = Tokens::fromCode($source);
-        static::assertSame($monolithic, $tokens->isMonolithicPhp());
-    }
-
-    public function provideShortOpenTagMonolithicPhpDetectionCases(): array
-    {
-        return [
-            ["<?\n", true],
-            ["<?\n?>", true],
-            [" <?\n", false],
-            ["<?\n?> ", false],
-            ["<?\n?><?\n", false],
-            ["<?\n?><?php\n", false],
-            ["<?\n?><?=' ';\n", false],
-            ["<?php\n?><?\n", false],
-            ["<?=' '\n?><?\n", false],
-        ];
-    }
-
-    /**
-     * @dataProvider provideShortOpenTagEchoMonolithicPhpDetectionCases
-     */
-    public function testShortOpenTagEchoMonolithicPhpDetection(string $source, bool $monolithic): void
-    {
-        $tokens = Tokens::fromCode($source);
-        static::assertSame($monolithic, $tokens->isMonolithicPhp());
-    }
-
-    public function provideShortOpenTagEchoMonolithicPhpDetectionCases(): array
-    {
-        return [
-            ["<?=' ';\n", true],
-            ["<?=' '?>", true],
-            [" <?=' ';\n", false],
-            ["<?=' '?> ", false],
-            ["<?php\n?><?=' ';\n", false],
-            ["<?=' '\n?><?php\n", false],
-            ["<?=' '\n?><?=' ';\n", false],
-        ];
+        yield [true, "<?php\n"];
+        yield [true, "<?php\n?>"];
+        yield [false, ''];
+        yield [false, ' '];
+        yield [false, "#!/usr/bin/env php\n<?php\n"];
+        yield [false, " <?php\n"];
+        yield [false, "<?php\n?> "];
+        yield [false, "<?php\n?><?php\n"];
+        // short open tag
+        yield [(bool) ini_get('short_open_tag'), "<?\n"];
+        yield [(bool) ini_get('short_open_tag'), "<?\n?>"];
+        yield [false, " <?\n"];
+        yield [false, "<?\n?> "];
+        yield [false, "<?\n?><?\n"];
+        yield [false, "<?\n?><?php\n"];
+        yield [false, "<?\n?><?=' ';\n"];
+        yield [false, "<?php\n?><?\n"];
+        yield [false, "<?=' '\n?><?\n"];
+        // short open tag echo
+        yield [true, "<?=' ';\n"];
+        yield [true, "<?=' '?>"];
+        yield [false, " <?=' ';\n"];
+        yield [false, "<?=' '?> "];
+        yield [false, "<?php\n?><?=' ';\n"];
+        yield [false, "<?=' '\n?><?php\n"];
+        yield [false, "<?=' '\n?><?=' ';\n"];
     }
 
     public function testTokenKindsFound(): void