feat: Add the ability to set current dir and env vars

This commit is contained in:
gerald.pinder
2025-01-13 16:34:49 -05:00
parent b87fe80302
commit 403c7be922
6 changed files with 273 additions and 18 deletions

View File

@@ -11,6 +11,47 @@ fn expression() {
assert_eq!(format!("{command:?}"), r#""echo" "test""#.to_string());
}
#[test]
fn current_dir() {
let command = cmd!(
cd "~/";
"echo",
"test",
);
assert_eq!(format!("{command:?}"), r#"cd "~/" && "echo" "test""#);
}
#[test]
fn env_vars() {
let command = cmd!(
env {
"TEST": "test",
};
"echo",
"test",
);
assert_eq!(format!("{command:?}"), r#"TEST="test" "echo" "test""#);
}
#[test]
fn cd_env_vars() {
let command = cmd!(
cd "~/";
env {
"TEST": "test",
};
"echo",
"test",
);
assert_eq!(
format!("{command:?}"),
r#"cd "~/" && TEST="test" "echo" "test""#
);
}
#[rstest]
#[case(false, false, r#""echo" "test""#)]
#[case(true, false, r#""echo" "test" "single""#)]