diff options
| author | nsfisis <nsfisis@gmail.com> | 2026-07-24 20:23:18 +0900 |
|---|---|---|
| committer | nsfisis <nsfisis@gmail.com> | 2026-07-24 20:23:18 +0900 |
| commit | 70198f0c1e67594549193413fb8e86b1879dc41d (patch) | |
| tree | 58f7cdf7c0529bf2477855c93879ca50a9f38080 /crates/shirabe-php-shim/src/compress.rs | |
| parent | a0f4c7518ab09de8ebe166d9d3b4d15149a22439 (diff) | |
| download | php-shirabe-70198f0c1e67594549193413fb8e86b1879dc41d.tar.gz php-shirabe-70198f0c1e67594549193413fb8e86b1879dc41d.tar.zst php-shirabe-70198f0c1e67594549193413fb8e86b1879dc41d.zip | |
fix(installer-test): catch exceptions thrown during composer construction
PHPUnit's expectException/expectExceptionMessage wrap the whole rest
of InstallerTest::doTestIntegration, so a fixture's expected exception
can legitimately come from FactoryMock::create() itself (root package
construction), not just the later install/update run. The Rust port
only checked for that at one point, after the run, and unconditionally
unwrapped Factory::__create_mock's result — so a fixture like
install-self-from-root.test (root package requiring itself, which
throws during root package construction) panicked on that unwrap
instead of being caught and compared against the expected message.
Capture the construction Result and, when an exception was expected,
run the same normalize/contains/assert check the later block already
uses before returning early, matching PHPUnit's behavior of running no
further test-method code once the expected exception has fired.
Diffstat (limited to 'crates/shirabe-php-shim/src/compress.rs')
0 files changed, 0 insertions, 0 deletions
