Browse Source

DX: fix Unsafe call to private method errors reported by PHPStan (#6879)

Dariusz Rumiński 1 year ago
parent
commit
11bc3fb4e9

+ 0 - 1
phpstan.neon

@@ -13,7 +13,6 @@ parameters:
     treatPhpDocTypesAsCertain: false
     ignoreErrors:
         - '/^Class [a-zA-Z\\]+ extends @final class PhpCsFixer\\(ConfigurationException\\InvalidConfigurationException|ConfigurationException\\InvalidFixerConfigurationException|Tokenizer\\Tokens)\.$/'
-        - '/^Unsafe call to private method PhpCsFixer\\Tests\\[a-zA-Z\\]+::[a-zA-Z]+\(\) through static::\.$/'
         - '/^\$this\(PhpCsFixer\\Tokenizer\\Tokens\) does not accept PhpCsFixer\\Tokenizer\\Token\|null\.$/'
 
         # ignore PHPUnit data providers return type as they are not checked against the test methods anyway

+ 7 - 7
tests/RuleSet/Sets/AbstractSetTest.php

@@ -67,10 +67,16 @@ abstract class AbstractSetTest extends TestCase
         }
     }
 
+    protected static function assertSanityString(string $string): void
+    {
+        static::assertSame(trim($string), $string);
+        static::assertNotSame('', $string);
+    }
+
     /**
      * @param array<string, array<string, mixed>|bool> $setRules
      */
-    private static function assertRules(array $setRules, FixerFactory $factory, string $setName): void
+    protected static function assertRules(array $setRules, FixerFactory $factory, string $setName): void
     {
         $sawRule = false;
 
@@ -92,12 +98,6 @@ abstract class AbstractSetTest extends TestCase
         static::assertSame($setRulesSorted, $setRules);
     }
 
-    private static function assertSanityString(string $string): void
-    {
-        static::assertSame(trim($string), $string);
-        static::assertNotSame('', $string);
-    }
-
     private static function getSet(): RuleSetDescriptionInterface
     {
         $setClassName = preg_replace('/^(PhpCsFixer)\\\\Tests(\\\\.+)Test$/', '$1$2', static::class);

+ 5 - 5
tests/Test/AbstractFixerTestCase.php

@@ -450,6 +450,11 @@ abstract class AbstractFixerTestCase extends TestCase
         return null;
     }
 
+    protected static function assertCorrectCasing(string $needle, string $haystack, string $message): void
+    {
+        static::assertSame(substr_count(strtolower($haystack), strtolower($needle)), substr_count($haystack, $needle), $message);
+    }
+
     private function getLinter(): LinterInterface
     {
         static $linter = null;
@@ -472,11 +477,6 @@ abstract class AbstractFixerTestCase extends TestCase
         static::assertFalse(strpos($descriptionType, '``'), sprintf('[%s] The %s must no contain sequential backticks.', $fixerName, $descriptionType));
     }
 
-    private static function assertCorrectCasing(string $needle, string $haystack, string $message): void
-    {
-        static::assertSame(substr_count(strtolower($haystack), strtolower($needle)), substr_count($haystack, $needle), $message);
-    }
-
     /**
      * @param list<array{0: int, 1?: string}> $sequence
      *

+ 2 - 2
tests/Test/AbstractIntegrationTestCase.php

@@ -210,7 +210,7 @@ abstract class AbstractIntegrationTestCase extends TestCase
         }
 
         $errorsManager = new ErrorsManager();
-        $fixers = static::createFixers($case);
+        $fixers = self::createFixers($case);
         $runner = new Runner(
             new \ArrayIterator([new \SplFileInfo($tmpFile)]),
             $fixers,
@@ -315,7 +315,7 @@ abstract class AbstractIntegrationTestCase extends TestCase
                     static function (FixerInterface $fixer): int {
                         return $fixer->getPriority();
                     },
-                    static::createFixers($case)
+                    self::createFixers($case)
                 ))),
                 sprintf(
                     'Rules priorities are not differential enough. If rules would be used in reverse order then final output would be different than the expected one. For that, different priorities must be set up for used rules to ensure stable order of them. In "%s".',

+ 1 - 1
tests/Test/Assert/AssertTokensTrait.php

@@ -24,7 +24,7 @@ use PhpCsFixer\Tokenizer\Tokens;
  */
 trait AssertTokensTrait
 {
-    private static function assertTokens(Tokens $expectedTokens, Tokens $inputTokens): void
+    protected static function assertTokens(Tokens $expectedTokens, Tokens $inputTokens): void
     {
         foreach ($expectedTokens as $index => $expectedToken) {
             if (!isset($inputTokens[$index])) {

+ 2 - 2
tests/Tokenizer/TokensTest.php

@@ -1280,7 +1280,7 @@ $bar;',
         $tokens->overrideRange($indexStart, $indexEnd, $items);
         $tokens->clearEmptyTokens();
 
-        self::assertTokens(Tokens::fromArray($expected), $tokens);
+        static::assertTokens(Tokens::fromArray($expected), $tokens);
     }
 
     /**
@@ -1295,7 +1295,7 @@ $bar;',
         $tokens->overrideRange($indexStart, $indexEnd, $items);
         $tokens->clearEmptyTokens();
 
-        self::assertTokens(Tokens::fromArray($expected), $tokens);
+        static::assertTokens(Tokens::fromArray($expected), $tokens);
     }
 
     public static function provideOverrideRangeCases(): iterable

+ 2 - 2
tests/Tokenizer/Transformer/NameQualifiedTransformerTest.php

@@ -50,7 +50,7 @@ final class NameQualifiedTransformerTest extends AbstractTransformerTestCase
             $this->transformer->process($tokens, $tokens[$i], $i);
         }
 
-        self::assertTokens($expectedTokens, $tokens);
+        static::assertTokens($expectedTokens, $tokens);
 
         if (null === $input) {
             static::assertFalse($tokens->isChanged());
@@ -161,7 +161,7 @@ final class NameQualifiedTransformerTest extends AbstractTransformerTestCase
      */
     public function testPriority(array $expected, string $source): void
     {
-        self::assertTokens(Tokens::fromArray($expected), Tokens::fromCode($source));
+        static::assertTokens(Tokens::fromArray($expected), Tokens::fromCode($source));
     }
 
     public static function providePriorityCases(): iterable