Make WordPress Core


Ignore:
Timestamp:
08/06/2021 09:38:45 PM (4 years ago)
Author:
SergeyBiryukov
Message:

Tests: Replace expectException() for PHP native errors with calls to the dedicated PHPUnit 8.4+ methods.

The old manner of testing these is soft deprecated as of PHPUnit 8.4, hard deprecated as of PHPUnit 9.0 and will be removed in PHPUnit 10.0.

These dedicated methods introduced in PHPUnit 8.4 should be used as an alternative:

  • expectDeprecation()
  • expectDeprecationMessage()
  • expectDeprecationMessageMatches()
  • expectNotice()
  • expectNoticeMessage()
  • expectNoticeMessageMatches()
  • expectWarning()
  • expectWarningMessage()
  • expectWarningMessageMatches()
  • expectError()
  • expectErrorMessage()
  • expectErrorMessageMatches()

These new PHPUnit methods are all polyfilled by the PHPUnit Polyfills and switching to these will future-proof the tests some more.

References:

Follow-up to [51559-51562].

Props jrf.
See #46149.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/tests/phpunit/tests/dependencies/scripts.php

    r51462 r51563  
    14251425        if ( $warning ) {
    14261426            if ( PHP_VERSION_ID < 80000 ) {
    1427                 $this->expectException( 'PHPUnit_Framework_Error_Warning' );
     1427                $this->expectWarning();
    14281428            } else {
    1429                 // As this exception will only be set on PHP 8 in combination with PHPUnit 7, this will work (for now).
     1429                /*
     1430                 * As this exception will only be set on PHP 8 in combination with PHPUnit 7, this will work (for now).
     1431                 * Once the PHPUnit version constraints have been widened and a _supported_ PHPUnit version is
     1432                 * used to run the tests on PHP 8.x, this should be changed to `$this->expectError()`.
     1433                 */
    14301434                $this->expectException( 'Error' );
    14311435            }
Note: See TracChangeset for help on using the changeset viewer.