✨ New PHPCSUtils\TestUtils\ConfigDouble class#550
Merged
Conversation
0598162 to
170ec3d
Compare
283214b to
816e5ae
Compare
b7c5c55 to
f488a53
Compare
2 tasks
a675d0d to
c61fa32
Compare
This was referenced May 13, 2024
The PHP_CodeSniffer native `Config` class contains a number of static properties. As the value of these static properties will be retained between instantiations of the class, config values set in one test can influence the results for another test, which makes tests unstable. This commit introduces a test "double" of the `Config` class which prevents this from happening. In _most_ cases, tests should be using this class instead of the "normal" Config, with the exception of select tests for the PHPCS Config class itself. Includes tests covering the new class.
…\ConfigDouble` class Start using the new `ConfigDouble` class in the `UtilityMethodTestCase` class. Note: this includes deprecating the `UtilityMethodTestCase::setStaticConfigProperty()` method, which was introduced, but not publicized, in PHPCSUtils 1.0.9 in favour of handling the same in the `ConfigDouble` class.
c61fa32 to
4f0f9a4
Compare
Member
Author
|
Rebased without changes, merging. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
New
PHPCSUtils\TestUtils\ConfigDoubleclassThe PHP_CodeSniffer native
Configclass contains a number of static properties.As the value of these static properties will be retained between instantiations of the class, config values set in one test can influence the results for another test, which makes tests unstable.
This commit introduces a test "double" of the
Configclass which prevents this from happening.In most cases, tests should be using this class instead of the "normal" Config, with the exception of select tests for the PHPCS Config class itself.
Includes tests covering the new class.
UtilityMethodTestCase: implement use of the new
PHPCSUtils\TestUtils\ConfigDoubleclassStart using the new
ConfigDoubleclass in theUtilityMethodTestCaseclass.Note: this includes deprecating the
UtilityMethodTestCase::setStaticConfigProperty()method, which was introduced, but not publicized, in PHPCSUtils 1.0.9 in favour of handling the same in theConfigDoubleclass.