aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/mozart-registry/src/lib.rs
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-05-02 16:53:41 +0900
committernsfisis <nsfisis@gmail.com>2026-05-02 16:53:41 +0900
commitc1733d88510b7afb88f7a17849de514365e42c84 (patch)
tree57f9eb854cb226059df90d190626e090ae07d639 /crates/mozart-registry/src/lib.rs
parent82501a36a0fa6725d656742da42c860e75a89b89 (diff)
downloadphp-mozart-c1733d88510b7afb88f7a17849de514365e42c84.tar.gz
php-mozart-c1733d88510b7afb88f7a17849de514365e42c84.tar.zst
php-mozart-c1733d88510b7afb88f7a17849de514365e42c84.zip
refactor(registry): introduce Repository and InstallerExecutor traits
Sets up DI scaffolding for in-process installer E2E tests, mirroring how Composer's PHPUnit suite swaps Packagist (FactoryMock) and the install manager (InstallationManagerMock) without touching the network or filesystem. Additions: - Repository trait + RepositorySet (Composer's RepositoryInterface analog), with PackagistRepository, InlinePackageRepository, VcsRepository impls. - InstallerExecutor trait (Composer's InstallationManager analog) with FilesystemExecutor extracted from install_from_lock. install_from_lock now delegates per-package install/uninstall verbs to FilesystemExecutor; console output orchestration stays in the caller so existing --EXPECT-OUTPUT-shape assertions remain comparable. No behavior change - all 136 enabled installer fixtures still pass. Also tightens the installer_fixture\! ignore form to a single token (installer_fixture\!(name, ignore)) for readability. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Diffstat (limited to 'crates/mozart-registry/src/lib.rs')
-rw-r--r--crates/mozart-registry/src/lib.rs2
1 files changed, 2 insertions, 0 deletions
diff --git a/crates/mozart-registry/src/lib.rs b/crates/mozart-registry/src/lib.rs
index a4afacd..e60d7b0 100644
--- a/crates/mozart-registry/src/lib.rs
+++ b/crates/mozart-registry/src/lib.rs
@@ -2,8 +2,10 @@ pub mod cache;
pub mod downloader;
pub mod inline_package;
pub mod installed;
+pub mod installer_executor;
pub mod lockfile;
pub mod packagist;
+pub mod repository;
pub mod resolver;
pub mod vcs_bridge;
pub mod version;