You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
LOC-6740: move tests to phpunit 9.6 so CI can actually install and run them
The CI job added in the previous commit went red at dependency install:
Composer 2.10 refuses to install phpunit 4.8.* because every 4.8.x release
carries published security advisories (PKSA-z3gr-8qht-p93v,
PKSA-w57n-mhp6-c9sd). Suppressing advisories via policy.advisories.ignore-id
is not an acceptable trade on a security fix, so the test dependency moves
forward instead.
The `php -l` step DID pass on that run — all five lib/ and tests/ files,
including the 145 new lines in LocalBinary.php.
- composer.json: phpunit 4.8.* -> ^9.6. require-dev only; the library's own
runtime floor stays php >= 5.3.19 and is unaffected.
- tests/: PHPUnit_Framework_TestCase -> PHPUnit\Framework\TestCase,
setUp/tearDown given the `: void` signature phpunit 9 requires, and
assertContains() on strings -> assertStringContainsString() (removed in 9).
- tests/LocalTest.php: tagged test_isRunning, test_checkPid and
test_multiple_binary `@group network`. All three call Local::start(), which
downloads and runs the real binary and needs BROWSERSTACK_ACCESS_KEY, so
they can never pass on a credential-less runner. --exclude-group network
now excludes them, which is what makes the CI job meaningfully green
rather than green-because-skipped.
- phpunit.xml: phpunit 9 schema, bootstrap=vendor/autoload.php, and a
Test.php suffix on the directory so tests/manual/ is not scanned.
- workflow: install git + unzip before Composer. Neither is in the official
php image and ext-zip is not built in, so Composer has no way to unpack
packages without one of them.
Refs LOC-6740
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
0 commit comments