cli/tests: Refactor checkout command tests

This commit is contained in:
Fintan Halpenny 2026-03-09 16:29:34 +00:00
parent 5aaf978f97
commit 7a1e6a2423
2 changed files with 42 additions and 36 deletions

View File

@ -30,6 +30,10 @@ mod util;
use util::environment::{config, Environment};
use util::formula::formula;
mod commands {
mod checkout;
}
/// Run a CLI test file.
pub(crate) fn test<'a>(
test: impl AsRef<Path>,
@ -357,42 +361,6 @@ fn rad_warn_old_nodes() {
Environment::alice(["rad-warn-old-nodes"]);
}
#[test]
fn rad_checkout() {
let mut environment = Environment::new();
let profile = environment.profile("alice");
let copy = tempfile::tempdir().unwrap();
environment.repository(&profile);
environment.test("rad-init", &profile).unwrap();
test(
"examples/rad-checkout.md",
copy.path(),
Some(&profile.home),
[],
)
.unwrap();
if cfg!(target_os = "linux") {
test(
"examples/rad-checkout-repo-config-linux.md",
copy.path(),
Some(&profile.home),
[],
)
.unwrap();
} else if cfg!(target_os = "macos") {
test(
"examples/rad-checkout-repo-config-macos.md",
copy.path(),
Some(&profile.home),
[],
)
.unwrap();
}
}
#[test]
fn rad_id() {
let mut environment = Environment::new();

View File

@ -0,0 +1,38 @@
use crate::test;
use crate::util::environment::Environment;
#[test]
fn rad_checkout() {
let mut environment = Environment::new();
let profile = environment.profile("alice");
let copy = tempfile::tempdir().unwrap();
environment.repository(&profile);
environment.test("rad-init", &profile).unwrap();
test(
"examples/rad-checkout.md",
copy.path(),
Some(&profile.home),
[],
)
.unwrap();
if cfg!(target_os = "linux") {
test(
"examples/rad-checkout-repo-config-linux.md",
copy.path(),
Some(&profile.home),
[],
)
.unwrap();
} else if cfg!(target_os = "macos") {
test(
"examples/rad-checkout-repo-config-macos.md",
copy.path(),
Some(&profile.home),
[],
)
.unwrap();
}
}