aboutsummaryrefslogtreecommitdiffstats
path: root/tests/serve_request.rs
diff options
context:
space:
mode:
authorCarson McManus <carson.mcmanus1@gmail.com>2024-01-30 00:07:44 +0000
committerCarson McManus <carson.mcmanus1@gmail.com>2024-01-30 00:07:44 +0000
commitb2816629e4f25a4084ac8806b8f1f8b844834b9a (patch)
treed9caa2b8d1c0564ed12572cf5eb621765283ce3f /tests/serve_request.rs
parentadd `--disable-indexing` cli flag to completely disable directory indexing (diff)
downloadminiserve-b2816629e4f25a4084ac8806b8f1f8b844834b9a.tar.gz
miniserve-b2816629e4f25a4084ac8806b8f1f8b844834b9a.zip
add unit tests
Diffstat (limited to 'tests/serve_request.rs')
-rw-r--r--tests/serve_request.rs31
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(())
+}