nushell/tests/commands/ls.rs

98 lines
2.4 KiB
Rust
Raw Normal View History

2019-12-17 19:54:39 +01:00
use nu_test_support::fs::Stub::EmptyFile;
use nu_test_support::playground::Playground;
use nu_test_support::{nu, pipeline};
2019-08-02 11:23:39 +02:00
#[test]
fn lists_regular_files() {
2019-08-29 02:32:42 +02:00
Playground::setup("ls_test_1", |dirs, sandbox| {
2019-09-11 16:36:50 +02:00
sandbox.with_files(vec![
EmptyFile("yehuda.txt"),
EmptyFile("jonathan.txt"),
EmptyFile("andres.txt"),
2019-08-29 02:32:42 +02:00
]);
2019-08-02 11:23:39 +02:00
2019-08-29 02:32:42 +02:00
let actual = nu!(
cwd: dirs.test(), pipeline(
2019-08-29 08:31:56 +02:00
r#"
ls
| count
2019-08-29 08:31:56 +02:00
| echo $it
"#
2019-08-29 02:32:42 +02:00
));
2019-08-02 11:23:39 +02:00
assert_eq!(actual, "3");
})
2019-08-02 11:23:39 +02:00
}
#[test]
fn lists_regular_files_using_asterisk_wildcard() {
2019-08-29 02:32:42 +02:00
Playground::setup("ls_test_2", |dirs, sandbox| {
2019-09-11 16:36:50 +02:00
sandbox.with_files(vec![
EmptyFile("los.txt"),
EmptyFile("tres.txt"),
EmptyFile("amigos.txt"),
EmptyFile("arepas.clu"),
2019-08-29 02:32:42 +02:00
]);
2019-08-02 11:23:39 +02:00
2019-08-29 02:32:42 +02:00
let actual = nu!(
cwd: dirs.test(), pipeline(
2019-08-29 08:31:56 +02:00
r#"
ls *.txt
| count
2019-08-29 08:31:56 +02:00
| echo $it
"#
2019-08-29 02:32:42 +02:00
));
2019-08-02 11:23:39 +02:00
2019-08-29 02:32:42 +02:00
assert_eq!(actual, "3");
})
2019-08-02 11:23:39 +02:00
}
#[test]
fn lists_regular_files_using_question_mark_wildcard() {
2019-08-29 02:32:42 +02:00
Playground::setup("ls_test_3", |dirs, sandbox| {
2019-09-11 16:36:50 +02:00
sandbox.with_files(vec![
EmptyFile("yehuda.10.txt"),
EmptyFile("jonathan.10.txt"),
EmptyFile("andres.10.txt"),
EmptyFile("chicken_not_to_be_picked_up.100.txt"),
2019-08-29 02:32:42 +02:00
]);
2019-08-02 11:23:39 +02:00
2019-08-29 02:32:42 +02:00
let actual = nu!(
cwd: dirs.test(), pipeline(
2019-08-29 08:31:56 +02:00
r#"
ls *.??.txt
| count
2019-08-29 08:31:56 +02:00
| echo $it
"#
2019-08-29 02:32:42 +02:00
));
2019-08-02 11:23:39 +02:00
assert_eq!(actual, "3");
})
2019-08-02 11:23:39 +02:00
}
#[test]
fn lists_all_files_in_directories_from_stream() {
Playground::setup("ls_test_4", |dirs, sandbox| {
sandbox.mkdir("dir_a").mkdir("dir_b").with_files(vec![
EmptyFile("root1.txt"),
EmptyFile("root2.txt"),
EmptyFile("dir_a/yehuda.10.txt"),
EmptyFile("dir_a/jonathan.10.txt"),
EmptyFile("dir_b/andres.10.txt"),
EmptyFile("dir_b/chicken_not_to_be_picked_up.100.txt"),
]);
let actual = nu!(
cwd: dirs.test(), pipeline(
r#"
echo dir_a dir_b
| ls $it
| count
| echo $it
"#
));
assert_eq!(actual, "4");
})
}