PHPCSStandards / PHP_CodeSniffer

PHP_CodeSniffer tokenizes PHP files and detects violations of a defined set of coding standards.
BSD 3-Clause "New" or "Revised" License
805 stars 47 forks source link

AbstractMethodUnitTest: improve finding of target token #531

Closed jrfnl closed 1 week ago

jrfnl commented 1 week ago

Description

These changes are similar to changes previously made in the same method in PHPCSUtils.

As things were, there could be a situation where the getTargetTokenFromFile() method did not find the delimiter comment. In that case, the method would search for the target token starting at token 0, which would generally lead to an incorrect token being identified as the target token.

This has now been fixed by verifying the outcome of the findPrevious() call and throwing an exception (causing the test to fail) when the delimiter comment was not found.

Along the same lines, when the target token would not be found, an exception will now be thrown as well.

Suggested changelog entry

N/A (this is an internal use class, if external standards want to use a base class for testing utility methods, they should use the PHPCSUtils UtilityMethodTestCase).

Related issues/external references