fix ls with empty string (#12086)

# Description
Fixes: #12054

It's cause by nu always add `/*` if there is a parameter in ls, then `ls
""` becomes `ls "/*"`. This pr tries to fix it by only append `/`
character if pattern is not empty.

# User-Facing Changes
NaN

# Tests + Formatting
Done

# After Submitting
NaN

---------

Co-authored-by: Stefan Holderbach <sholderbach@users.noreply.github.com>
This commit is contained in:
Wind
2024-03-09 05:49:41 +08:00
committed by GitHub
parent 71ffd04ae7
commit 9e5f4c3b82
2 changed files with 17 additions and 0 deletions

View File

@ -701,3 +701,13 @@ fn list_flag_false() {
assert_eq!(actual.out, "false");
})
}
#[test]
fn list_empty_string() {
Playground::setup("ls_empty_string", |dirs, sandbox| {
sandbox.with_files(vec![EmptyFile("yehuda.txt")]);
let actual = nu!(cwd: dirs.test(), "ls ''");
assert!(actual.err.contains("does not exist"));
})
}