Просмотр исходного кода

bug: Fix BinaryOperatorSpacesFixer adding whitespace outside PHP blocks (#6476)

Do not treat `[T_INLINE_HTML, '-']` as operator
Jeremiasz Major 2 лет назад
Родитель
Сommit
93beae7eef

+ 1 - 1
src/Tokenizer/TokensAnalyzer.php

@@ -562,7 +562,7 @@ final class TokensAnalyzer
         $tokens = $this->tokens;
         $token = $tokens[$index];
 
-        if ($token->isGivenKind([T_ENCAPSED_AND_WHITESPACE, CT::T_TYPE_INTERSECTION])) {
+        if ($token->isGivenKind([T_INLINE_HTML, T_ENCAPSED_AND_WHITESPACE, CT::T_TYPE_INTERSECTION])) {
             return false;
         }
 

+ 1 - 0
tests/Fixer/Operator/BinaryOperatorSpacesFixerTest.php

@@ -708,6 +708,7 @@ $a
 $b;
 ',
             ],
+            ['<a href="test-<?=$path?>-<?=$id?>.html">Test</a>'],
         ];
     }
 

+ 4 - 0
tests/Tokenizer/TokensAnalyzerTest.php

@@ -1579,6 +1579,10 @@ $b;',
                 [9 => false],
                 '<?php $a = "{$value}-{$theSwitch}";',
             ],
+            [
+                [3 => false],
+                '<?=$path?>-<?=$id?>',
+            ],
         ];
 
         $operators = [