aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/bind.rs1
-rw-r--r--tests/serve_request.rs15
2 files changed, 16 insertions, 0 deletions
diff --git a/tests/bind.rs b/tests/bind.rs
index 1c816f0..0fa914e 100644
--- a/tests/bind.rs
+++ b/tests/bind.rs
@@ -53,6 +53,7 @@ fn bind_ipv4_ipv6(
#[case(&["-i", "0.0.0.0"])]
#[case(&["-i", "::", "-i", "0.0.0.0"])]
#[case(&["--random-route"])]
+#[case(&["--route-prefix", "/prefix"])]
fn validate_printed_urls(tmpdir: TempDir, port: u16, #[case] args: &[&str]) -> Result<(), Error> {
let mut child = Command::cargo_bin("miniserve")?
.arg(tmpdir.path())
diff --git a/tests/serve_request.rs b/tests/serve_request.rs
index ec2c978..d66ffd4 100644
--- a/tests/serve_request.rs
+++ b/tests/serve_request.rs
@@ -260,3 +260,18 @@ fn serve_index_instead_of_404_in_spa_mode(
Ok(())
}
+
+#[rstest]
+#[case(server(&["--route-prefix", "foobar"]))]
+#[case(server(&["--route-prefix", "/foobar/"]))]
+fn serves_requests_with_route_prefix(#[case] server: TestServer) -> Result<(), Error> {
+ let url_without_route = server.url();
+ let status = reqwest::blocking::get(url_without_route)?.status();
+ assert_eq!(status, StatusCode::NOT_FOUND);
+
+ let url_with_route = server.url().join("foobar")?;
+ let status = reqwest::blocking::get(url_with_route)?.status();
+ assert_eq!(status, StatusCode::OK);
+
+ Ok(())
+}