Skip to content

Commit

Permalink
minors
Browse files Browse the repository at this point in the history
  • Loading branch information
SpacePossum committed Dec 31, 2020
1 parent bb6ee85 commit 114ac85
Show file tree
Hide file tree
Showing 7 changed files with 31 additions and 3 deletions.
3 changes: 2 additions & 1 deletion src/Fixer/Alias/SetTypeToCastFixer.php
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,8 @@ protected function applyFix(\SplFileInfo $file, Tokens $tokens)
}

$prev = $tokens->getPrevMeaningfulToken($functionNameIndex);
if (!$tokens[$prev]->isGivenKind(T_OPEN_TAG) && !$tokens[$prev]->equalsAny([';', '{'])) {

if (!$tokens[$prev]->equalsAny([';', '{', '}', [T_OPEN_TAG]])) {
continue; // return value of the function is used
}

Expand Down
17 changes: 15 additions & 2 deletions src/Tokenizer/TokensAnalyzer.php
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@

namespace PhpCsFixer\Tokenizer;

use PhpCsFixer\Tokenizer\Analyzer\GotoLabelAnalyzer;

/**
* Analyzer of Tokens collection.
*
Expand All @@ -32,6 +34,11 @@ final class TokensAnalyzer
*/
private $tokens;

/**
* @var ?GotoLabelAnalyzer
*/
private $gotoLabelAnalyzer;

public function __construct(Tokens $tokens)
{
$this->tokens = $tokens;
Expand Down Expand Up @@ -362,8 +369,14 @@ public function isConstantInvocation($index)
}

// check for goto label
if ($this->tokens[$nextIndex]->equals(':') && $this->tokens[$prevIndex]->equalsAny([';', '}', [T_OPEN_TAG], [T_OPEN_TAG_WITH_ECHO]])) {
return false;
if ($this->tokens[$nextIndex]->equals(':')) {
if (null === $this->gotoLabelAnalyzer) {
$this->gotoLabelAnalyzer = new GotoLabelAnalyzer();
}

if ($this->gotoLabelAnalyzer->belongsToGoToLabel($this->tokens, $nextIndex)) {
return false;
}
}

return true;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
/**
* @internal
*
* @covers \PhpCsFixer\AbstractNoUselessElseFixer
* @covers \PhpCsFixer\Fixer\ControlStructure\NoSuperfluousElseifFixer
*/
final class NoSuperfluousElseifFixerTest extends AbstractFixerTestCase
Expand Down
1 change: 1 addition & 0 deletions tests/Fixer/ControlStructure/NoUselessElseFixerTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
*
* @internal
*
* @covers \PhpCsFixer\AbstractNoUselessElseFixer
* @covers \PhpCsFixer\Fixer\ControlStructure\NoUselessElseFixer
*/
final class NoUselessElseFixerTest extends AbstractFixerTestCase
Expand Down
1 change: 1 addition & 0 deletions tests/Fixer/FunctionNotation/FopenFlagOrderFixerTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
*
* @internal
*
* @covers \PhpCsFixer\AbstractFopenFlagFixer
* @covers \PhpCsFixer\Fixer\FunctionNotation\FopenFlagOrderFixer
*/
final class FopenFlagOrderFixerTest extends AbstractFixerTestCase
Expand Down
1 change: 1 addition & 0 deletions tests/Fixer/FunctionNotation/FopenFlagsFixerTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
*
* @internal
*
* @covers \PhpCsFixer\AbstractFopenFlagFixer
* @covers \PhpCsFixer\Fixer\FunctionNotation\FopenFlagsFixer
*/
final class FopenFlagsFixerTest extends AbstractFixerTestCase
Expand Down
10 changes: 10 additions & 0 deletions tests/RuleSet/RuleSetsTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -44,9 +44,19 @@ public function testGetSetDefinitions()
static::assertIsString($name);
static::assertTrue('@' === $name[0]);
static::assertIsArray($set->getRules());
static::assertSame($set, RuleSets::getSetDefinition($name));
}
}

public function testGetUnknownSetDefinition()
{
$name = 'Unknown';
$this->expectException(\InvalidArgumentException::class);
$this->expectExceptionMessageMatches(sprintf('#^Set "%s" does not exist\.$#', $name));

RuleSets::getSetDefinition($name);
}

/**
* @dataProvider provideSetDefinitionNameCases
*
Expand Down

0 comments on commit 114ac85

Please sign in to comment.