diff options
Diffstat (limited to 'crates')
| -rw-r--r-- | crates/shirabe/tests/installer/installation_manager_test.rs | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/crates/shirabe/tests/installer/installation_manager_test.rs b/crates/shirabe/tests/installer/installation_manager_test.rs index 26b8d7fa..f5012ef7 100644 --- a/crates/shirabe/tests/installer/installation_manager_test.rs +++ b/crates/shirabe/tests/installer/installation_manager_test.rs @@ -296,8 +296,13 @@ fn test_add_remove_installer() { #[test] fn test_execute() { // TODO(phase-d): a partial mock of InstallationManager (onlyMethods install/update/uninstall) - // with expects(once)->with(...) is not reproducible without method-overriding mocks; execute() - // also takes the batched download path. + // with expects(once)->with(...) is not reproducible without method-overriding mocks: the PHP + // test runs the *real* execute() (batched download path included, via NoopInstaller) while + // spying on the three per-operation methods it dispatches to. The existing + // `InstallationManager::__new_mock` seam cannot serve because it replaces execute() wholesale + // (recording operations and skipping the download step, ref InstallationManagerMock), so the + // real dispatch logic under test would never run. A per-method spy seam on the real execute() + // path would be a design change to the production struct, so the test stays ignored. todo!() } |
