Wordpress/tests/phpunit/includes/phpunit7/testcase.php
Sergey Biryukov 5bad67bccf Tests: Add a polyfill for assertEqualsWithDelta() to WP_UnitTestCase and use it where appropriate.
`assertEqualsWithDelta()` was added in PHPUnit 7.5, while WordPress still supports PHPUnit 5.4.x as the minimum version.

See #38266.

git-svn-id: https://develop.svn.wordpress.org/trunk@48952 602fd350-edb4-49c9-b593-d223f7449a82
2020-09-07 03:12:17 +00:00

58 lines
1.8 KiB
PHP

<?php
require_once dirname( __DIR__ ) . '/abstract-testcase.php';
/**
* Defines a basic fixture to run multiple tests.
*
* Resets the state of the WordPress installation before and after every test.
*
* Includes utility functions and assertions useful for testing WordPress.
*
* All WordPress unit tests should inherit from this class.
*/
class WP_UnitTestCase extends WP_UnitTestCase_Base {
/**
* Asserts that a condition is not false.
*
* This method has been backported from a more recent PHPUnit version,
* as tests running on PHP 5.2 use PHPUnit 3.6.x.
*
* @since 4.7.4
*
* @param bool $condition Condition to check.
* @param string $message Optional. Message to display when the assertion fails.
*
* @throws PHPUnit_Framework_AssertionFailedError
*/
public static function assertNotFalse( $condition, string $message = '' ): void {
self::assertThat( $condition, self::logicalNot( self::isFalse() ), $message );
}
/**
* Asserts that two variables are equal (with delta).
*
* This method has been backported from a more recent PHPUnit version,
* as tests running on PHP 5.6 use PHPUnit 5.7.x.
*
* @since 5.6.0
*
* @param mixed $expected First value to compare.
* @param mixed $actual Second value to compare.
* @param float $delta Allowed numerical distance between two values to consider them equal.
* @param string $message Optional. Message to display when the assertion fails.
*
* @throws ExpectationFailedException
* @throws \SebastianBergmann\RecursionContext\InvalidArgumentException
*/
public static function assertEqualsWithDelta( $expected, $actual, float $delta, string $message = '' ): void {
$constraint = new PHPUnit\Framework\Constraint\IsEqual(
$expected,
$delta
);
static::assertThat( $actual, $constraint, $message );
}
}