fix(tests): make data provider methods static for PHPUnit 11 - #1263
Merged
Conversation
PHPUnit 11 requires @dataProvider methods to be static. Convert the non-static providers and remove their remaining dependency on $this (static gender list, per-call Faker instance) so they can run as static methods. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
stentrop
approved these changes
Sep 3, 2026
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.
Summary
@dataProvidermethods to bestatic; this failed with "Data Provider method ... is not static" for 9 providers across 5 test files, causing 18 errors.staticand removed their remaining dependency on instance state so they still work as static methods:CustomerServiceFeatureTest:$gendersproperty madestatic, provider methods useself::$gendersinstead of$this->genders.NotificationServiceFeatureTest: provider now builds its own\Faker\Factory::create()instance instead of$this->fake.VariationSearchFactoryTest,CheckoutServiceShippingTest,UrlQueryTest: providers had no$thisusage, just addedstatic.Test plan
php -lon all 5 changed files (PHP 8.2 and PHP 8.5)phpcs --standard=PSR12shows no new violations on any changed line (pre-existing violations elsewhere in these files are untouched)