From 8fc9bb3a29ab0e4d2c87ccee5eb1693ebe983816 Mon Sep 17 00:00:00 2001 From: Ajeet D'Souza <98ajeet@gmail.com> Date: Sat, 12 Dec 2020 03:48:05 +0530 Subject: [PATCH] Add PATH to fish env --- src/shell.rs | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/src/shell.rs b/src/shell.rs index ba36e7c..3c2c5e8 100644 --- a/src/shell.rs +++ b/src/shell.rs @@ -54,6 +54,8 @@ mod tests { use once_cell::sync::OnceCell; use seq_macro::seq; + use std::env; + macro_rules! with_opts_size { ($macro:ident) => { $macro!(24); @@ -96,6 +98,17 @@ mod tests { }) } + fn make_cmd(cmd: &str) -> Command { + let home = tempfile::tempdir().unwrap(); + let home = home.path(); + let path = env::var_os("PATH").unwrap_or_default(); + + let mut cmd = Command::new(cmd); + cmd.env_clear().env("HOME", home).env("PATH", path); + + cmd + } + macro_rules! generate_tests { ($N:literal) => { seq!(i in 0..$N { @@ -143,13 +156,9 @@ mod tests { #[test] fn fish_fish_#i() { let opts = dbg!(&opts()[i]); - let home = tempfile::tempdir().unwrap(); - let home = home.path(); let source = Fish(opts).render().unwrap(); - Command::new("fish") + make_cmd("fish") .args(&["--command", &source, "--private"]) - .env_clear() - .env("HOME", home) .assert() .success() .stdout("")