Repository navigation
Tests: Restore original theme after block template tests - #14817
Draft
shail-mehta wants to merge 1 commit into
Draft
shail-mehta wants to merge 1 commit into
shail-mehta wants to merge 1 commit into
Conversation
Save the active stylesheet before switching to the block-theme fixture and restore it after each test so theme state does not leak into later suites. Trac ticket: https://core.trac.wordpress.org/ticket/65893
There was a problem hiding this comment.
🟢 Approval recommended
Both changes use the established theme-restoration pattern, preserve teardown ordering, and have no identified blocking issues.
No open issues 🎉
What changed in this PR
This PR improves isolation between block template tests by restoring the active theme after each test.
Changes:
- Saves the incoming stylesheet before switching to the test theme in both fixtures.
- Restores that stylesheet when needed during teardown, before parent cleanup.
| File | Description |
|---|---|
tests/phpunit/tests/block-template.php |
Saves and restores the original stylesheet around block template tests. |
tests/phpunit/tests/block-template-utils.php |
Adds equivalent theme restoration to block template utility tests. |
Review effort: Balanced
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.
Trac ticket: #65893
What
Restores the active theme stylesheet in
tear_down()within:Tests_Block_Templateintests/phpunit/tests/block-template.phpTests_Block_Template_Utilsintests/phpunit/tests/block-template-utils.phpWhy
Both classes call
switch_theme( 'block-theme' )inset_up()without restoring the incoming stylesheet, leaving later test suites in the same process onblock-theme.How
$this->original_stylesheet = get_stylesheet();duringset_up().switch_theme( $this->original_stylesheet );intear_down()when the stylesheet changed.Testing Instructions
npm run env:start && npm run env:install.npm run test:php -- --filter '/Tests_Block_Template(_Utils)?::/' --order-by=random --random-order-seed=1npm run test:php -- --filter '/Tests_Block_Template(_Utils)?::/' --order-by=random --random-order-seed=2npm run test:php -- --filter '/Tests_Block_Template(_Utils)?::/'OK (55 tests, 117 assertions).Use of AI Tools