wp-cli / scaffold-command

Generates code for post types, taxonomies, blocks, plugins, child themes, etc.
MIT License
165 stars 87 forks source link

Rewrite PHPUnit test scaffolding to work with PHP 8.0+ compat code #285

Closed schlessera closed 3 years ago

schlessera commented 3 years ago

The way the PHPUnit tests are currently being scaffolded does not work with PHP 8.0+:

PHP Parse error:  syntax error, unexpected token "match", expecting identifier in
phar://phpunit/Framework/MockObject/Builder/Match.php on line 15

To fix this, the tests should be scaffolded in such a way that they make use of the WordPress Core compatibility code found in https://core.trac.wordpress.org/changeset/49037. However, that will require a rewrite to make the scaffolded tests rely on PHPUnit being executed as a Composer dev dependency.

amirhossein-karimi commented 2 years ago

Just remove if ( PHP_MAJOR_VERSION >= 8 ) { echo "The scaffolded tests cannot currently be run on PHP 8.0+. See https://github.com/wp-cli/scaffold-command/issues/285" . PHP_EOL; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped exit( 1 ); } from bootstrap.php