diff options
author | Carson McManus <carson.mcmanus1@gmail.com> | 2024-01-30 00:07:44 +0000 |
---|---|---|
committer | Carson McManus <carson.mcmanus1@gmail.com> | 2024-01-30 00:07:44 +0000 |
commit | b2816629e4f25a4084ac8806b8f1f8b844834b9a (patch) | |
tree | d9caa2b8d1c0564ed12572cf5eb621765283ce3f /tests | |
parent | add `--disable-indexing` cli flag to completely disable directory indexing (diff) | |
download | miniserve-b2816629e4f25a4084ac8806b8f1f8b844834b9a.tar.gz miniserve-b2816629e4f25a4084ac8806b8f1f8b844834b9a.zip |
add unit tests
Diffstat (limited to 'tests')
-rw-r--r-- | tests/serve_request.rs | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/tests/serve_request.rs b/tests/serve_request.rs index ac4360e..61de15f 100644 --- a/tests/serve_request.rs +++ b/tests/serve_request.rs @@ -321,3 +321,34 @@ fn serves_requests_static_file_check( Ok(()) } + +#[rstest] +#[case(server(&["--disable-indexing"]))] +fn serves_no_directory_if_indexing_disabled(#[case] server: TestServer) -> Result<(), Error> { + let body = reqwest::blocking::get(server.url())?; + assert_eq!(body.status(), StatusCode::NOT_FOUND); + let parsed = Document::from_read(body)?; + + assert!(parsed + .find(|x: &Node| x.text() == FILES[0]) + .next() + .is_none()); + assert!(parsed + .find(|x: &Node| x.text() == DIRECTORIES[0]) + .next() + .is_none()); + assert!(parsed + .find(|x: &Node| x.text() == "File not found.") + .next() + .is_some()); + + Ok(()) +} + +#[rstest] +#[case(server(&["--disable-indexing"]))] +fn serves_file_requests_when_indexing_disabled(#[case] server: TestServer) -> Result<(), Error> { + reqwest::blocking::get(format!("{}/{}", server.url(), FILES[0]))?.error_for_status()?; + + Ok(()) +} |