Skip to content

Commit 2513013

Browse files
committed
Tests: fail on deprecation notices
This (small) change needs a little explaining.... First of all, the `setup-php` action, by default uses a "production"-type ini file. This means that `error_reporting` is set to `E_ALL & ~E_DEPRECATED & ~E_STRICT` and `display_errors` is set to `Off`. For the purposes of CI, I'd recommend running with `-1` (always include all error levels on all PHP versions) and `display_errors=On` to ensure **all** PHP notices are shown. This is now fixed by adding the `ini-values` setting to `setup-php`. I've also made minor other tweaks to the `setup-php` config: * `tools: composer` is not needed as Composer is installed by default. * `extension: xdebug` is not the correct way to enable `xdebug` for code coverage. `coverage: xdebug` is (and is Xdebug cross-version compatible for Xdebug 2 and 3). Second of all, a change was made in PHPUnit 8.5.21 and 9.5.10, which changes the default value of the PHPUnit `convertDeprecationsToExceptions` attribute from `true` to `false`, meaning that tests would no longer fail on deprecation notices. Not great for open source packages which generally need to handle deprecations in a timely matter so as not to block other packages. So adding the `convertDeprecationsToExceptions` attribute and explicitly setting the value to `true` brings back the old behaviour and will allow for failing the tests on deprecation notices.
1 parent 74bdf15 commit 2513013

File tree

2 files changed

+3
-3
lines changed

2 files changed

+3
-3
lines changed

.github/workflows/main.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -52,8 +52,8 @@ jobs:
5252
uses: shivammathur/setup-php@v2
5353
with:
5454
php-version: '${{ matrix.php }}'
55-
tools: composer
56-
extensions: 'xdebug'
55+
ini-values: zend.assertions=1, error_reporting=-1, display_errors=On, log_errors_max_len=0
56+
coverage: 'xdebug'
5757
- uses: actions/checkout@v4
5858

5959
- name: Install Composer dependencies & cache dependencies

phpunit.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?xml version="1.0"?>
2-
<phpunit bootstrap="tests/Mf2/bootstrap.php">
2+
<phpunit bootstrap="tests/Mf2/bootstrap.php" convertDeprecationsToExceptions="true">
33
<testsuites>
44
<testsuite name="php-mf2">
55
<directory suffix="Test.php">tests/Mf2</directory>

0 commit comments

Comments
 (0)