mirror of
git://develop.git.wordpress.org/
synced 2025-07-12 03:06:26 +02:00
As things were, the inheritance order of the abstract test classes was as follows: {{{ WP_UnitTestCase (PHPUnit adapter layer) extends WP_UnitTestCase_Base (base test class) extends PHPUnit\Framework\TestCase (PHPUnit native class) }}} Concrete (child) test classes, as well as more specific abstract TestCases, are/were expected to extend the `WP_UnitTestCase`. This order is not optimal as it means that the `WP_UnitTestCase_Base` class would not be able to benefit from any polyfills and/or shims in the PHPUnit adapter layer. With that in mind, this commit changes the inheritance to: {{{ WP_UnitTestCase (empty class, left in place to not break BC for plugin/theme integration tests) extends WP_UnitTestCase_Base (base test class) extends PHPUnit_Adapter_TestCase (PHPUnit adapter layer) extends PHPUnit\Framework\TestCase (PHPUnit native class) }}} The new order allows for the `WP_UnitTestCase_Base` to also benefit from the PHPUnit adapter layer. For backward compatibility reasons the `WP_UnitTestCase`, which all test classes are (were) expected to extend, is left in place, though it is now an empty class and explicitly `abstract`. Follow-up to [51559], [51560]. Props jrf, hellofromTonya, johnbillion, netweb, SergeyBiryukov. See #46149. git-svn-id: https://develop.svn.wordpress.org/trunk@51561 602fd350-edb4-49c9-b593-d223f7449a82
46 lines
1.6 KiB
PHP
46 lines
1.6 KiB
PHP
<?php
|
|
|
|
use Yoast\PHPUnitPolyfills\Helpers\AssertAttributeHelper;
|
|
use Yoast\PHPUnitPolyfills\Polyfills\AssertClosedResource;
|
|
use Yoast\PHPUnitPolyfills\Polyfills\AssertEqualsSpecializations;
|
|
use Yoast\PHPUnitPolyfills\Polyfills\AssertFileDirectory;
|
|
use Yoast\PHPUnitPolyfills\Polyfills\AssertFileEqualsSpecializations;
|
|
use Yoast\PHPUnitPolyfills\Polyfills\AssertionRenames;
|
|
use Yoast\PHPUnitPolyfills\Polyfills\AssertIsType;
|
|
use Yoast\PHPUnitPolyfills\Polyfills\AssertNumericType;
|
|
use Yoast\PHPUnitPolyfills\Polyfills\AssertObjectEquals;
|
|
use Yoast\PHPUnitPolyfills\Polyfills\AssertStringContains;
|
|
use Yoast\PHPUnitPolyfills\Polyfills\EqualToSpecializations;
|
|
use Yoast\PHPUnitPolyfills\Polyfills\ExpectException;
|
|
use Yoast\PHPUnitPolyfills\Polyfills\ExpectExceptionMessageMatches;
|
|
use Yoast\PHPUnitPolyfills\Polyfills\ExpectExceptionObject;
|
|
use Yoast\PHPUnitPolyfills\Polyfills\ExpectPHPException;
|
|
|
|
/**
|
|
* PHPUnit adapter layer.
|
|
*
|
|
* This class enhances the PHPUnit native `TestCase` with polyfills
|
|
* for assertions and expectation methods added between PHPUnit 4.8 - 9.5.
|
|
*
|
|
* See {@link https://github.com/Yoast/PHPUnit-Polyfills} for full
|
|
* documentation on the available polyfills.
|
|
*/
|
|
abstract class PHPUnit_Adapter_TestCase extends PHPUnit\Framework\TestCase {
|
|
|
|
use AssertAttributeHelper;
|
|
use AssertClosedResource;
|
|
use AssertEqualsSpecializations;
|
|
use AssertFileDirectory;
|
|
use AssertFileEqualsSpecializations;
|
|
use AssertionRenames;
|
|
use AssertIsType;
|
|
use AssertNumericType;
|
|
use AssertObjectEquals;
|
|
use AssertStringContains;
|
|
use EqualToSpecializations;
|
|
use ExpectException;
|
|
use ExpectExceptionMessageMatches;
|
|
use ExpectExceptionObject;
|
|
use ExpectPHPException;
|
|
}
|