From e588920985c71eaa652a292db2dd1d75b73712e4 Mon Sep 17 00:00:00 2001 From: nsfisis Date: Sun, 12 Jul 2026 01:22:13 +0900 Subject: refactor(locker-test): reuse test_case's installation_manager helper locker_test.rs defined its own installation_manager, identical to test_case.rs's (both build a bare InstallationManager over a mock HttpDownloader). Expose the shared one via pub(crate) and drop the duplicate. Co-Authored-By: Claude Sonnet 5 --- crates/shirabe/tests/package/locker_test.rs | 23 +---------------------- 1 file changed, 1 insertion(+), 22 deletions(-) (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 fc66293b..c355c774 100644 --- a/crates/shirabe/tests/package/locker_test.rs +++ b/crates/shirabe/tests/package/locker_test.rs @@ -1,8 +1,7 @@ //! ref: composer/tests/Composer/Test/Package/LockerTest.php +use crate::test_case::installation_manager; use indexmap::IndexMap; -use shirabe::config::Config; -use shirabe::installer::InstallationManager; use shirabe::io::IOInterface; use shirabe::io::null_io::NullIO; use shirabe::json::{JsonEncodeOptions, JsonFile}; @@ -10,8 +9,6 @@ use shirabe::package::Locker; use shirabe::package::handle::{CompletePackageHandle, PackageInterfaceHandle}; use shirabe::plugin::plugin_interface; use shirabe::repository::{FindPackageConstraint, RepositoryInterfaceHandle}; -use shirabe::util::http_downloader::HttpDownloader; -use shirabe::util::r#loop::Loop; use shirabe::util::process_executor::ProcessExecutor; use shirabe_php_shim::{LogicException, PhpMixed, hash}; use tempfile::TempDir; @@ -20,24 +17,6 @@ fn null_io() -> std::rc::Rc> { std::rc::Rc::new(std::cell::RefCell::new(NullIO::new())) } -fn installation_manager( - io: &std::rc::Rc>, -) -> std::rc::Rc> { - // These tests never reach Locker::get_package_time, so the InstallationManager is never - // actually used; build it over a mock HttpDownloader to avoid the unimplemented curl backend. - let config = std::rc::Rc::new(std::cell::RefCell::new(Config::new(false, None))); - let http_downloader = std::rc::Rc::new(std::cell::RefCell::new(HttpDownloader::__new_mock( - io.clone(), - config, - ))); - let r#loop = std::rc::Rc::new(std::cell::RefCell::new(Loop::new(http_downloader, None))); - std::rc::Rc::new(std::cell::RefCell::new(InstallationManager::new( - r#loop, - io.clone(), - None, - ))) -} - /// ref: LockerTest::getJsonContent — `JsonFile::encode(ksort([minimum-stability, name]), 0)`. fn get_json_content(custom_data: &[(&str, &str)]) -> String { let mut data: IndexMap = IndexMap::new(); -- cgit v1.3.1