diff options
author | Norberto Lopes <nlopes.ml@gmail.com> | 2023-08-04 16:00:11 +0000 |
---|---|---|
committer | Norberto Lopes <nlopes.ml@gmail.com> | 2023-08-06 08:34:08 +0000 |
commit | 1fd606031d018854d2b8d08d30863105567fcccc (patch) | |
tree | ad263938cd57951c519f3351b7ca9d9a480c7f4f /tests/serve_request.rs | |
parent | Add CHANGELOG entry for #1191 (diff) | |
download | miniserve-1fd606031d018854d2b8d08d30863105567fcccc.tar.gz miniserve-1fd606031d018854d2b8d08d30863105567fcccc.zip |
Add pretty urls
This adds a new flag namely `--pretty-urls` that when enabled will serve the equivalent
`.html` if it exists.
Very much the same approach that [`netlify`
uses](https://docs.netlify.com/site-deploys/post-processing/).
It can be quite useful when having hrefs like `/about` serve `/about.html`.
Diffstat (limited to '')
-rw-r--r-- | tests/serve_request.rs | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/serve_request.rs b/tests/serve_request.rs index e717525..ac4360e 100644 --- a/tests/serve_request.rs +++ b/tests/serve_request.rs @@ -268,6 +268,24 @@ fn serve_index_instead_of_404_in_spa_mode( } #[rstest] +#[case(server_no_stderr(&["--pretty-urls", "--index", FILES[1]]), "/")] +#[case(server_no_stderr(&["--pretty-urls", "--index", FILES[1]]), "test.html")] +#[case(server_no_stderr(&["--pretty-urls", "--index", FILES[1]]), "test")] +fn serve_file_instead_of_404_in_pretty_urls_mode( + #[case] server: TestServer, + #[case] url: &str, +) -> Result<(), Error> { + let body = reqwest::blocking::get(format!("{}{}", server.url(), url))?.error_for_status()?; + let parsed = Document::from_read(body)?; + assert!(parsed + .find(|x: &Node| x.text() == "Test Hello Yes") + .next() + .is_some()); + + Ok(()) +} + +#[rstest] #[case(server(&["--route-prefix", "foobar"]))] #[case(server(&["--route-prefix", "/foobar/"]))] fn serves_requests_with_route_prefix(#[case] server: TestServer) -> Result<(), Error> { |