Support extracting URL params multiple times (#15)

Useful when building higher order extractors.
This commit is contained in:
David Pedersen
2021-06-13 13:06:33 +02:00
committed by GitHub
parent 2b360a7873
commit c41c9e0f78
6 changed files with 69 additions and 36 deletions
+24
View File
@@ -271,6 +271,30 @@ async fn extracting_url_params() {
assert_eq!(res.status(), StatusCode::OK);
}
#[tokio::test]
async fn extracting_url_params_multiple_times() {
let app = route(
"/users/:id",
get(
|_: extract::UrlParams<(i32,)>,
_: extract::UrlParamsMap,
_: extract::UrlParams<(i32,)>,
_: extract::UrlParamsMap| async {},
),
);
let addr = run_in_background(app).await;
let client = reqwest::Client::new();
let res = client
.get(format!("http://{}/users/42", addr))
.send()
.await
.unwrap();
assert_eq!(res.status(), StatusCode::OK);
}
#[tokio::test]
async fn boxing() {
let app = route(