-
Notifications
You must be signed in to change notification settings - Fork 205
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve tests setup #949
Merged
Merged
Improve tests setup #949
Conversation
This file contains 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
This package combines the previously used PHPUnit_Polyfills with support for WordPress integration tests.
Needed to make tests compatible with multiple versions of PHPUnit.
This was deprecated in PHPUnit 8 and removed in PHPUnit 9, but the dms/phpunit-arraysubset-asserts means it can continue to be used for now.
PHPUnit 9 deprecates `assertObjectHasAttribute()`. `assertObjectHasProperty()` is not available until PHPUnit 10.1, and only available with PHPUnit-Polyfills 2.0.0, which doesn't seem compatible with unit tests running under WP 5.7/5.8.
This was deprecated in PHPUnit 8 in favour of more specific method names.
Use `assertStringNotContainsString()` instead.
- Removes constant that was making all tests run with multisite. - Converts deprecations to exceptions to be true.
By marking certain tests as being in a `@group`, and excluding them, then we can get a green result instead of yellow "tests skipped" results that we would do by marking tests as skipped of the single/multisite condition was not correct.
- Mark one test as requiring multisite. - Remove the other test, as it was causing an issue, and doesn't seem to be testing anything about CAP anyway.
- Make dynamic properties explicit. - Skip a test that generates a deprecation notice in PHP 8.1 + WP < 6.3.
Highest and lowest versions of PHP 7, and PHP 8. Highest and lowest versions of WP, plus trunk.
See https://make.wordpress.org/core/2021/09/27/changes-to-the-wordpress-core-php-test-suite/#integration-tests-ci-changes - PHPUnit 9 removed a `PHPUnit\Util\Getopt` class, but the [fix](https://core.trac.wordpress.org/changeset/51570/) wasn't applied to WP until 5.9. Also - exclude WP 5.7 on PHP 8.2 since it is not supported.
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.
Description
Update the integrations tests and CI process to cover newer PHP versions.
factory()
method.@group
instead of skipping tests.Deploy Notes
None.
Steps to Test
See this action.