From 3efcd8d338aa49efb0c9075c0f7a4dd4e4138b7d Mon Sep 17 00:00:00 2001 From: nsfisis Date: Sun, 21 Jun 2026 05:13:03 +0900 Subject: test: port package archiver/loader/version/locker and PluginInstaller stubs All ignored: ArrayLoader/ValidatingArrayLoader/VersionSelector parse constraints via a look-around regex; ArchiveManager uses PharData (todo!()); ArchivableFilesFinder/VersionGuesser/Locker mock git/process/IO; the plugin API is not implemented (TODO(plugin)). Wires up the plugin test target. Co-Authored-By: Claude Opus 4.8 (1M context) --- crates/shirabe/tests/package/locker_test.rs | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'crates/shirabe/tests/package/locker_test.rs') diff --git a/crates/shirabe/tests/package/locker_test.rs b/crates/shirabe/tests/package/locker_test.rs index 6bfc8bc..4023c10 100644 --- a/crates/shirabe/tests/package/locker_test.rs +++ b/crates/shirabe/tests/package/locker_test.rs @@ -1 +1,25 @@ //! ref: composer/tests/Composer/Test/Package/LockerTest.php + +// These construct a Locker with a mocked JsonFile/InstallationManager/repository and a +// mocked ProcessExecutor to drive lock read/write and freshness checks; mocking is not +// available here. +macro_rules! stub { + ($name:ident) => { + #[test] + #[ignore = "mocks JsonFile/InstallationManager/repository/ProcessExecutor to drive Locker; mocking is not available"] + fn $name() { + todo!() + } + }; +} + +stub!(test_is_locked); +stub!(test_get_not_locked_packages); +stub!(test_get_locked_packages); +stub!(test_set_lock_data); +stub!(test_lock_bad_packages); +stub!(test_is_fresh); +stub!(test_is_fresh_false); +stub!(test_is_fresh_with_content_hash); +stub!(test_is_fresh_with_content_hash_and_no_hash); +stub!(test_is_fresh_false_with_content_hash); -- cgit v1.3.1