Build/Test Tools: Let `WP_UnitTestCase_Base` extend the namespaced version of PHPUnit's test case class.

With the minimum PHP version requirement set to 5.6 we're now able to use namespaces by default. This replaces `PHPUnit_Framework_TestCase` with `PHPUnit\Framework\TestCase` for `WP_UnitTestCase_Base` to solve autocompletion issues with code editors when using more recent PHPUnit versions. `PHPUnit\Framework\TestCase` is available since PHPUnit 5.4 and now the minimum required PHPUnit version.

Fixes #50236.

git-svn-id: https://develop.svn.wordpress.org/trunk@47880 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Dominik Schilling 2020-06-01 19:41:50 +00:00
parent 0cf715f55b
commit 178eeaf57e
3 changed files with 4 additions and 5 deletions

View File

@ -12,7 +12,7 @@ require_once __DIR__ . '/trac.php';
*
* All WordPress unit tests should inherit from this class.
*/
abstract class WP_UnitTestCase_Base extends PHPUnit_Framework_TestCase {
abstract class WP_UnitTestCase_Base extends PHPUnit\Framework\TestCase {
protected static $forced_tickets = array();
protected $expected_deprecated = array();

View File

@ -37,9 +37,9 @@ if ( ! is_readable( $config_file_path ) ) {
require_once $config_file_path;
require_once __DIR__ . '/functions.php';
if ( version_compare( tests_get_phpunit_version(), '8.0', '>=' ) ) {
if ( version_compare( tests_get_phpunit_version(), '5.4', '<' ) || version_compare( tests_get_phpunit_version(), '8.0', '>=' ) ) {
printf(
"Error: Looks like you're using PHPUnit %s. WordPress is currently only compatible with PHPUnit up to 7.x.\n",
"Error: Looks like you're using PHPUnit %s. WordPress requires at least PHPUnit 5.4 and is currently only compatible with PHPUnit up to 7.x.\n",
tests_get_phpunit_version()
);
echo "Please use the latest PHPUnit version from the 7.x branch.\n";

View File

@ -10,8 +10,7 @@ function tests_get_phpunit_version() {
if ( class_exists( 'PHPUnit_Runner_Version' ) ) {
$version = PHPUnit_Runner_Version::id();
} elseif ( class_exists( 'PHPUnit\Runner\Version' ) ) {
// Must be parsable by PHP 5.2.x.
$version = call_user_func( 'PHPUnit\Runner\Version::id' );
$version = PHPUnit\Runner\Version::id();
} else {
$version = 0;
}