From 858bdc37886becdc0aade35114fe48e4dd235f72 Mon Sep 17 00:00:00 2001 From: Bryan Helmkamp Date: Fri, 13 Mar 2026 18:03:23 -0400 Subject: [PATCH] Split trycmd into per-subcommand tests and remove live-probe doctor fixtures MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Split the single cli_tests trycmd function into 14 per-subcommand test functions so nextest can parallelize them. Delete header.toml and verbose.toml doctor fixtures that ran live network probes — the existing dry-run-flag.toml and help.trycmd already cover the same output assertion. Co-Authored-By: Claude Opus 4.6 (1M context) --- .../fabro-cli/tests/cmd/doctor/header.stdout | 3 -- .../fabro-cli/tests/cmd/doctor/header.toml | 5 ---- .../fabro-cli/tests/cmd/doctor/verbose.stdout | 3 -- .../fabro-cli/tests/cmd/doctor/verbose.toml | 5 ---- lib/crates/fabro-cli/tests/trycmd.rs | 29 +++++++++++++++---- 5 files changed, 24 insertions(+), 21 deletions(-) delete mode 100644 lib/crates/fabro-cli/tests/cmd/doctor/header.stdout delete mode 100644 lib/crates/fabro-cli/tests/cmd/doctor/header.toml delete mode 100644 lib/crates/fabro-cli/tests/cmd/doctor/verbose.stdout delete mode 100644 lib/crates/fabro-cli/tests/cmd/doctor/verbose.toml diff --git a/lib/crates/fabro-cli/tests/cmd/doctor/header.stdout b/lib/crates/fabro-cli/tests/cmd/doctor/header.stdout deleted file mode 100644 index 50fe30806..000000000 --- a/lib/crates/fabro-cli/tests/cmd/doctor/header.stdout +++ /dev/null @@ -1,3 +0,0 @@ -... -[..]Fabro Doctor[..] -... diff --git a/lib/crates/fabro-cli/tests/cmd/doctor/header.toml b/lib/crates/fabro-cli/tests/cmd/doctor/header.toml deleted file mode 100644 index 933a2987d..000000000 --- a/lib/crates/fabro-cli/tests/cmd/doctor/header.toml +++ /dev/null @@ -1,5 +0,0 @@ -bin.name = "fabro" -args = ["doctor"] - -[env] -inherit = false diff --git a/lib/crates/fabro-cli/tests/cmd/doctor/verbose.stdout b/lib/crates/fabro-cli/tests/cmd/doctor/verbose.stdout deleted file mode 100644 index 50fe30806..000000000 --- a/lib/crates/fabro-cli/tests/cmd/doctor/verbose.stdout +++ /dev/null @@ -1,3 +0,0 @@ -... -[..]Fabro Doctor[..] -... diff --git a/lib/crates/fabro-cli/tests/cmd/doctor/verbose.toml b/lib/crates/fabro-cli/tests/cmd/doctor/verbose.toml deleted file mode 100644 index 9612357a7..000000000 --- a/lib/crates/fabro-cli/tests/cmd/doctor/verbose.toml +++ /dev/null @@ -1,5 +0,0 @@ -bin.name = "fabro" -args = ["doctor", "-v"] - -[env] -inherit = false diff --git a/lib/crates/fabro-cli/tests/trycmd.rs b/lib/crates/fabro-cli/tests/trycmd.rs index 33129a0d5..dca631493 100644 --- a/lib/crates/fabro-cli/tests/trycmd.rs +++ b/lib/crates/fabro-cli/tests/trycmd.rs @@ -1,6 +1,25 @@ -#[test] -fn cli_tests() { - trycmd::TestCases::new() - .case("tests/cmd/**/*.trycmd") - .case("tests/cmd/**/*.toml"); +macro_rules! trycmd_subcommand { + ($name:ident, $dir:expr) => { + #[test] + fn $name() { + trycmd::TestCases::new() + .case(concat!("tests/cmd/", $dir, "/*.trycmd")) + .case(concat!("tests/cmd/", $dir, "/*.toml")); + } + }; } + +trycmd_subcommand!(cli_cp, "cp"); +trycmd_subcommand!(cli_doctor, "doctor"); +trycmd_subcommand!(cli_exec, "exec"); +trycmd_subcommand!(cli_init, "init"); +trycmd_subcommand!(cli_install, "install"); +trycmd_subcommand!(cli_llm, "llm"); +trycmd_subcommand!(cli_model, "model"); +trycmd_subcommand!(cli_pr, "pr"); +trycmd_subcommand!(cli_preview, "preview"); +trycmd_subcommand!(cli_run, "run"); +trycmd_subcommand!(cli_ssh, "ssh"); +trycmd_subcommand!(cli_system, "system"); +trycmd_subcommand!(cli_top_level, "top-level"); +trycmd_subcommand!(cli_validate, "validate");