diff --git a/tests/helpers/mod.rs b/tests/helpers/mod.rs index 87b5d9600..b441f8525 100644 --- a/tests/helpers/mod.rs +++ b/tests/helpers/mod.rs @@ -165,6 +165,18 @@ pub fn file_contents(full_path: &str) -> String { contents } +pub fn normalize_string(input: &str) -> String { + #[cfg(windows)] + { + input.to_string() + } + + #[cfg(not(windows))] + { + format!("\"{}\"", input) + } +} + pub fn create_file_at(full_path: &str) { std::fs::write(PathBuf::from(full_path), "fake data".as_bytes()).expect("can not create file"); } diff --git a/tests/tests.rs b/tests/tests.rs index 928482168..727b32324 100644 --- a/tests/tests.rs +++ b/tests/tests.rs @@ -1,6 +1,7 @@ mod helpers; use helpers::in_directory as cwd; +use helpers::normalize_string; #[test] fn external_num() { @@ -13,6 +14,15 @@ fn external_num() { assert_eq!(output, "10"); } +#[test] +fn external_has_correct_quotes() { + nu!(output, cwd("."), r#"echo "hello world""#); + + let output = normalize_string(&output); + + assert_eq!(output, r#""hello world""#); +} + #[test] fn inc_plugin() { nu!(