diff options
author | Silux <silux@silux.ink> | 2023-02-22 19:57:33 +0000 |
---|---|---|
committer | Silux <silux@silux.ink> | 2023-02-25 16:46:11 +0000 |
commit | 511d4dbf9f7d6d236fb5fe6b376d44820659415a (patch) | |
tree | 6cf78c27a4d74ff31f3840a3f1463d034d71f632 /tests/raw.rs | |
parent | Switched from using AsRef<str> to using &Uri (diff) | |
download | miniserve-511d4dbf9f7d6d236fb5fe6b376d44820659415a.tar.gz miniserve-511d4dbf9f7d6d236fb5fe6b376d44820659415a.zip |
Added tests and small fixes
...discovered when writing the tests.
Ran rustfmt, clippy::all, cargo test, everything passed and I hope the tests I wrote are good.
Now with 100% less forgotten debug logs!
Diffstat (limited to 'tests/raw.rs')
-rw-r--r-- | tests/raw.rs | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/tests/raw.rs b/tests/raw.rs index f212f58..95100d2 100644 --- a/tests/raw.rs +++ b/tests/raw.rs @@ -11,7 +11,16 @@ use select::predicate::Class; use select::predicate::Name; /// The footer displays the correct wget command to download the folder recursively -#[rstest(depth, dir, case(0, ""), case(2, "very/deeply/nested/"))] +// This test can't test all aspects of the wget footer, +// a more detailed unit test is available +#[rstest( + depth, + dir, + case(0, ""), + case(1, "dira/"), + case(2, "very/deeply/"), + case(3, "very/deeply/nested/") +)] fn ui_displays_wget_element( depth: u8, dir: &str, @@ -32,11 +41,18 @@ fn ui_displays_wget_element( .next() .unwrap() .text(); + let cut_dirs = match depth { + // Put all the files in a folder of this name + 0 => format!(" -P 'localhost:{}'", server.port()), + 1 => String::new(), + // Avoids putting the files in excessive directories + x => format!(" --cut-dirs={}", x - 1), + }; assert_eq!( wget_url, format!( - "wget -r -c -nH -np --cut-dirs={} -R \"index.html*\" \"{}{}?raw=true\"", - depth, + "wget -rcnHp -R 'index.html*'{} '{}{}?raw=true'", + cut_dirs, server.url(), dir ) |