aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/shirabe/tests/plugin/e2e_extension_installer_test.rs
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-08-05 03:58:11 +0900
committernsfisis <nsfisis@gmail.com>2026-08-05 03:58:11 +0900
commit3b0787fdecc21edf9ad22b82f547363c1aa79b15 (patch)
tree0dfa0d7b8e108c14a13dd468d43852682ec39b8c /crates/shirabe/tests/plugin/e2e_extension_installer_test.rs
parent9b444a9a879b75a6af3d3c7ba8b9a4294574c3ec (diff)
downloadphp-shirabe-3b0787fdecc21edf9ad22b82f547363c1aa79b15.tar.gz
php-shirabe-3b0787fdecc21edf9ad22b82f547363c1aa79b15.tar.zst
php-shirabe-3b0787fdecc21edf9ad22b82f547363c1aa79b15.zip
test(plugin): compare plugin-provided command execution against upstream
A Shirabe-authored CommandProvider fixture plugin (greet) runs under both implementations: exit codes, the command's own output, help/list rendering, alias resolution, a validation failure, and a file recording the shared object graph the command observed (root package, strict application FQCN, and the exit code of the built-in about command it invoked) must match. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Diffstat (limited to 'crates/shirabe/tests/plugin/e2e_extension_installer_test.rs')
-rw-r--r--crates/shirabe/tests/plugin/e2e_extension_installer_test.rs4
1 files changed, 2 insertions, 2 deletions
diff --git a/crates/shirabe/tests/plugin/e2e_extension_installer_test.rs b/crates/shirabe/tests/plugin/e2e_extension_installer_test.rs
index c78af3cd..9a95888c 100644
--- a/crates/shirabe/tests/plugin/e2e_extension_installer_test.rs
+++ b/crates/shirabe/tests/plugin/e2e_extension_installer_test.rs
@@ -20,7 +20,7 @@ fn fixture_dir() -> PathBuf {
/// The upstream Composer checkout used as the comparison oracle (and as the PHP runtime of
/// the worker). Absent checkout means the oracle cannot run; the test returns early,
/// following the convention of the non-mock tests in `shirabe-php-rpc`.
-fn upstream_composer_bin() -> Option<PathBuf> {
+pub(crate) fn upstream_composer_bin() -> Option<PathBuf> {
let root = match std::env::var("SHIRABE_COMPOSER_PHP_DIR") {
Ok(dir) => PathBuf::from(dir),
Err(_) => Path::new(env!("CARGO_MANIFEST_DIR")).join("../../composer"),
@@ -33,7 +33,7 @@ fn upstream_composer_bin() -> Option<PathBuf> {
}
}
-fn copy_dir(from: &Path, to: &Path) {
+pub(crate) fn copy_dir(from: &Path, to: &Path) {
std::fs::create_dir_all(to).unwrap();
for entry in std::fs::read_dir(from).unwrap() {
let entry = entry.unwrap();