summaryrefslogtreecommitdiff
path: root/test_util/src
diff options
context:
space:
mode:
authorJae-Heon Ji <32578710+jaeheonji@users.noreply.github.com>2020-12-10 00:48:06 +0900
committerGitHub <noreply@github.com>2020-12-09 16:48:06 +0100
commitd492fb0eac8296513f003cf32edf80ec99bf8f2b (patch)
treee6dadd7afe1f72aab9860f64f13e94cfa343c7ad /test_util/src
parentb200e6fc3e591f67646832adb9bbf129ee2b2761 (diff)
fix(op_crates/fetch): support non-ascii response headers value (#8600)
Diffstat (limited to 'test_util/src')
-rw-r--r--test_util/src/lib.rs13
1 files changed, 12 insertions, 1 deletions
diff --git a/test_util/src/lib.rs b/test_util/src/lib.rs
index a45581491..8a47eb139 100644
--- a/test_util/src/lib.rs
+++ b/test_util/src/lib.rs
@@ -290,6 +290,16 @@ pub async fn run_all_servers() {
*res.status_mut() = StatusCode::FOUND;
Box::new(res)
});
+ let non_ascii_redirect =
+ warp::path("non_ascii_redirect").map(|| -> Box<dyn Reply> {
+ let mut res = Response::new(Body::empty());
+ *res.status_mut() = StatusCode::MOVED_PERMANENTLY;
+ res.headers_mut().insert(
+ "location",
+ HeaderValue::from_bytes(b"/redirect\xae").unwrap(),
+ );
+ Box::new(res)
+ });
let etag_script = warp::path!("etag_script.ts")
.and(warp::header::optional::<String>("if-none-match"))
@@ -444,7 +454,8 @@ pub async fn run_all_servers() {
.or(echo_server)
.or(echo_multipart_file)
.or(multipart_form_data)
- .or(bad_redirect);
+ .or(bad_redirect)
+ .or(non_ascii_redirect);
let http_fut =
warp::serve(content_type_handler.clone()).bind(([127, 0, 0, 1], PORT));