mirror of
git://develop.git.wordpress.org/
synced 2025-01-17 12:58:25 +01:00
7c2b54e027
Since PHPUnit 9.5.10 and 8.5.21, PHP deprecations are no longer converted to exceptions by default (`convertDeprecationsToExceptions="true"` can be configured to enable this).
Reference: [fac02620f6
Do not convert PHP deprecations to exceptions by default]; [https://github.com/sebastianbergmann/phpunit/blob/9.5.10/ChangeLog-9.5.md#9510---2021-09-25 PHPUnit 9.5.10 changelog].
Let's unpack this:
Previously (PHPUnit < 9.5.10/8.5.21), if PHPUnit would encounter a PHP native deprecation notice, it would:
1. Show a test which causes a deprecation notice to be thrown as **"errored"**,
2. Show the **first** deprecation notice it encountered and
3. PHPUnit would exit with a **non-0 exit code** (2), which will fail a CI build.
As of PHPUnit 9.5.10/8.5.21, if PHPUnit encounters a PHP native deprecation notice, it will no longer do so. Instead PHPUnit will:
1. Show a test which causes a PHP deprecation notice to be thrown as **"risky"**,
2. Show the **all** deprecation notices it encountered and
3. PHPUnit will exit with a **0 exit code**, which will show a CI build as passing.
This commit reverts PHPUnit to the previous behaviour by adding `convertDeprecationsToExceptions="true"` to the PHPUnit configuration. It also adds the other related directives for consistency.
Props jrf, netweb, costdev, SergeyBiryukov.
See #54183.
git-svn-id: https://develop.svn.wordpress.org/trunk@51871 602fd350-edb4-49c9-b593-d223f7449a82
77 lines
2.8 KiB
XML
77 lines
2.8 KiB
XML
<phpunit
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xsi:noNamespaceSchemaLocation="http://schema.phpunit.de/9.2/phpunit.xsd"
|
|
bootstrap="tests/phpunit/includes/bootstrap.php"
|
|
backupGlobals="false"
|
|
colors="true"
|
|
beStrictAboutTestsThatDoNotTestAnything="true"
|
|
beStrictAboutOutputDuringTests="true"
|
|
convertErrorsToExceptions="true"
|
|
convertWarningsToExceptions="true"
|
|
convertNoticesToExceptions="true"
|
|
convertDeprecationsToExceptions="true"
|
|
>
|
|
<testsuites>
|
|
<!-- Default test suite to run all tests. -->
|
|
<testsuite name="default">
|
|
<directory suffix=".php">tests/phpunit/tests</directory>
|
|
<exclude>tests/phpunit/tests/rest-api/rest-autosaves-controller.php</exclude>
|
|
</testsuite>
|
|
<!-- Sets the DOING_AUTOSAVE constant, so needs to be run last. -->
|
|
<testsuite name="restapi-autosave">
|
|
<file>tests/phpunit/tests/rest-api/rest-autosaves-controller.php</file>
|
|
</testsuite>
|
|
</testsuites>
|
|
<groups>
|
|
<exclude>
|
|
<group>ajax</group>
|
|
<group>ms-files</group>
|
|
<group>ms-required</group>
|
|
<group>external-http</group>
|
|
</exclude>
|
|
</groups>
|
|
<logging>
|
|
<log type="junit" target="tests/phpunit/build/logs/junit.xml" />
|
|
</logging>
|
|
<php>
|
|
<const name="WP_RUN_CORE_TESTS" value="1" />
|
|
</php>
|
|
<filter>
|
|
<whitelist addUncoveredFilesFromWhitelist="true">
|
|
<directory suffix=".php">src</directory>
|
|
<exclude>
|
|
<!-- Third party library exclusions. -->
|
|
<directory suffix=".php">src/wp-includes/ID3</directory>
|
|
<directory suffix=".php">src/wp-includes/IXR</directory>
|
|
<directory suffix=".php">src/wp-includes/random_compat</directory>
|
|
<directory suffix=".php">src/wp-includes/PHPMailer</directory>
|
|
<directory suffix=".php">src/wp-includes/Requests</directory>
|
|
<directory suffix=".php">src/wp-includes/SimplePie</directory>
|
|
<directory suffix=".php">src/wp-includes/sodium_compat</directory>
|
|
<directory suffix=".php">src/wp-includes/Text</directory>
|
|
|
|
<!-- Plugins and themes. -->
|
|
<directory suffix=".php">src/wp-content/</directory>
|
|
|
|
<file>src/wp-admin/includes/class-ftp*</file>
|
|
<file>src/wp-admin/includes/class-pclzip.php</file>
|
|
<file>src/wp-admin/includes/deprecated.php</file>
|
|
<file>src/wp-admin/includes/ms-deprecated.php</file>
|
|
|
|
<file>src/wp-includes/atomlib.php</file>
|
|
<file>src/wp-includes/class-IXR.php</file>
|
|
<file>src/wp-includes/class-json.php</file>
|
|
<file>src/wp-includes/class-phpass.php</file>
|
|
<file>src/wp-includes/class-pop3.php</file>
|
|
<file>src/wp-includes/class-requests.php</file>
|
|
<file>src/wp-includes/class-simplepie.php</file>
|
|
<file>src/wp-includes/class-snoopy.php</file>
|
|
<file>src/wp-includes/deprecated.php</file>
|
|
<file>src/wp-includes/ms-deprecated.php</file>
|
|
<file>src/wp-includes/pluggable-deprecated.php</file>
|
|
<file>src/wp-includes/rss.php</file>
|
|
</exclude>
|
|
</whitelist>
|
|
</filter>
|
|
</phpunit>
|