Skip to content

Commit

Permalink
Tests: Skip Gutenberg plugin activation test on older WP versions.
Browse files Browse the repository at this point in the history
The purpose of `tests/e2e/specs/gutenberg-plugin.test.js` is to ensure that running the Gutenberg plugin (stable version) on a WordPress `trunk` install doesn't produce any fatals.

The test was introduced in [54913], i.e. it has been around since WP 6.2. It makes sense to have it present on older branches, as the Gutenberg plugin not only supports `trunk`, but also the current stable version of WordPress (i.e. currently 6.5), and one version below (6.4). However, it is not expected to work on any earlier versions beyond that; in practice, it has produced errors on some of those.

This changeset checks the REST API response from the plugin activation request. If it returns an error with error code `plugin_wp_incompatible`, it skips the test.

Props jorbin, johnbillion, swissspidy.
Fixes #60971.

git-svn-id: https://develop.svn.wordpress.org/trunk@58046 602fd350-edb4-49c9-b593-d223f7449a82
  • Loading branch information
ockham committed Apr 26, 2024
1 parent 0c99bcf commit 81882dd
Showing 1 changed file with 14 additions and 1 deletion.
15 changes: 14 additions & 1 deletion tests/e2e/specs/gutenberg-plugin.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,20 @@ test.describe( 'Gutenberg plugin', () => {

expect( plugin.status ).toBe( 'inactive' );

await requestUtils.activatePlugin( 'gutenberg' );
try {
await requestUtils.activatePlugin( 'gutenberg' );
} catch ( error ) {
if (
typeof error === 'object' &&
error !== null &&
Object.prototype.hasOwnProperty.call( error, 'code' ) &&
error.code === 'plugin_wp_incompatible'
) {
test.skip();
} else {
throw error;
}
}

plugin = await requestUtils.rest( {
path: 'wp/v2/plugins/gutenberg/gutenberg',
Expand Down

0 comments on commit 81882dd

Please sign in to comment.