mirror of https://github.com/fafhrd91/actix-web
fix http tests
This commit is contained in:
parent
a0daecfda5
commit
18ae545f9a
|
@ -1,5 +1,7 @@
|
|||
use actix_http::{
|
||||
error, http, http::StatusCode, HttpMessage, HttpService, Request, Response,
|
||||
error::{self, Error},
|
||||
http::{self, StatusCode},
|
||||
HttpMessage, HttpService, Request, Response,
|
||||
};
|
||||
use actix_http_test::test_server;
|
||||
use actix_service::ServiceFactoryExt;
|
||||
|
@ -33,7 +35,7 @@ const STR: &str = "Hello World Hello World Hello World Hello World Hello World \
|
|||
async fn test_h1_v2() {
|
||||
let srv = test_server(move || {
|
||||
HttpService::build()
|
||||
.finish(|_| future::ok::<_, ()>(Response::ok().set_body(STR)))
|
||||
.finish(|_| future::ok::<_, Error>(Response::ok().set_body(STR)))
|
||||
.tcp()
|
||||
})
|
||||
.await;
|
||||
|
@ -61,7 +63,7 @@ async fn test_h1_v2() {
|
|||
async fn test_connection_close() {
|
||||
let srv = test_server(move || {
|
||||
HttpService::build()
|
||||
.finish(|_| future::ok::<_, ()>(Response::ok().set_body(STR)))
|
||||
.finish(|_| future::ok::<_, Error>(Response::ok().set_body(STR)))
|
||||
.tcp()
|
||||
.map(|_| ())
|
||||
})
|
||||
|
@ -77,9 +79,9 @@ async fn test_with_query_parameter() {
|
|||
HttpService::build()
|
||||
.finish(|req: Request| {
|
||||
if req.uri().query().unwrap().contains("qp=") {
|
||||
future::ok::<_, ()>(Response::ok())
|
||||
future::ok::<_, Error>(Response::ok())
|
||||
} else {
|
||||
future::ok::<_, ()>(Response::bad_request())
|
||||
future::ok::<_, Error>(Response::bad_request())
|
||||
}
|
||||
})
|
||||
.tcp()
|
||||
|
@ -112,7 +114,7 @@ async fn test_h1_expect() {
|
|||
let str = std::str::from_utf8(&buf).unwrap();
|
||||
assert_eq!(str, "expect body");
|
||||
|
||||
Ok::<_, ()>(Response::ok())
|
||||
Ok::<_, Error>(Response::ok())
|
||||
})
|
||||
.tcp()
|
||||
})
|
||||
|
|
|
@ -135,7 +135,7 @@ async fn test_h2_content_length() {
|
|||
StatusCode::OK,
|
||||
StatusCode::NOT_FOUND,
|
||||
];
|
||||
ok::<_, ()>(Response::new(statuses[idx]))
|
||||
ok::<_, Error>(Response::new(statuses[idx]))
|
||||
})
|
||||
.openssl(tls_config())
|
||||
.map_err(|_| ())
|
||||
|
@ -205,7 +205,7 @@ async fn test_h2_headers() {
|
|||
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST ",
|
||||
));
|
||||
}
|
||||
ok::<_, ()>(builder.body(data.clone()))
|
||||
ok::<_, Error>(builder.body(data.clone()))
|
||||
})
|
||||
.openssl(tls_config())
|
||||
.map_err(|_| ())
|
||||
|
@ -245,7 +245,7 @@ const STR: &str = "Hello World Hello World Hello World Hello World Hello World \
|
|||
async fn test_h2_body2() {
|
||||
let mut srv = test_server(move || {
|
||||
HttpService::build()
|
||||
.h2(|_| ok::<_, ()>(Response::ok().set_body(STR)))
|
||||
.h2(|_| ok::<_, Error>(Response::ok().set_body(STR)))
|
||||
.openssl(tls_config())
|
||||
.map_err(|_| ())
|
||||
})
|
||||
|
@ -263,7 +263,7 @@ async fn test_h2_body2() {
|
|||
async fn test_h2_head_empty() {
|
||||
let mut srv = test_server(move || {
|
||||
HttpService::build()
|
||||
.finish(|_| ok::<_, ()>(Response::ok().set_body(STR)))
|
||||
.finish(|_| ok::<_, Error>(Response::ok().set_body(STR)))
|
||||
.openssl(tls_config())
|
||||
.map_err(|_| ())
|
||||
})
|
||||
|
@ -287,7 +287,7 @@ async fn test_h2_head_empty() {
|
|||
async fn test_h2_head_binary() {
|
||||
let mut srv = test_server(move || {
|
||||
HttpService::build()
|
||||
.h2(|_| ok::<_, ()>(Response::ok().set_body(STR)))
|
||||
.h2(|_| ok::<_, Error>(Response::ok().set_body(STR)))
|
||||
.openssl(tls_config())
|
||||
.map_err(|_| ())
|
||||
})
|
||||
|
@ -310,7 +310,7 @@ async fn test_h2_head_binary() {
|
|||
async fn test_h2_head_binary2() {
|
||||
let srv = test_server(move || {
|
||||
HttpService::build()
|
||||
.h2(|_| ok::<_, ()>(Response::ok().set_body(STR)))
|
||||
.h2(|_| ok::<_, Error>(Response::ok().set_body(STR)))
|
||||
.openssl(tls_config())
|
||||
.map_err(|_| ())
|
||||
})
|
||||
|
@ -331,7 +331,7 @@ async fn test_h2_body_length() {
|
|||
HttpService::build()
|
||||
.h2(|_| {
|
||||
let body = once(ok(Bytes::from_static(STR.as_ref())));
|
||||
ok::<_, ()>(
|
||||
ok::<_, Error>(
|
||||
Response::ok().set_body(SizedStream::new(STR.len() as u64, body)),
|
||||
)
|
||||
})
|
||||
|
@ -354,7 +354,7 @@ async fn test_h2_body_chunked_explicit() {
|
|||
HttpService::build()
|
||||
.h2(|_| {
|
||||
let body = once(ok::<_, Error>(Bytes::from_static(STR.as_ref())));
|
||||
ok::<_, ()>(
|
||||
ok::<_, Error>(
|
||||
Response::build(StatusCode::OK)
|
||||
.insert_header((header::TRANSFER_ENCODING, "chunked"))
|
||||
.streaming(body),
|
||||
|
@ -382,7 +382,7 @@ async fn test_h2_response_http_error_handling() {
|
|||
HttpService::build()
|
||||
.h2(fn_service(|_| {
|
||||
let broken_header = Bytes::from_static(b"\0\0\0");
|
||||
ok::<_, ()>(
|
||||
ok::<_, Error>(
|
||||
Response::build(StatusCode::OK)
|
||||
.insert_header((header::CONTENT_TYPE, broken_header))
|
||||
.body(STR),
|
||||
|
@ -428,7 +428,7 @@ async fn test_h2_on_connect() {
|
|||
})
|
||||
.h2(|req: Request| {
|
||||
assert!(req.extensions().contains::<isize>());
|
||||
ok::<_, ()>(Response::ok())
|
||||
ok::<_, Error>(Response::ok())
|
||||
})
|
||||
.openssl(tls_config())
|
||||
.map_err(|_| ())
|
||||
|
|
|
@ -149,7 +149,7 @@ async fn test_h2_content_length() {
|
|||
StatusCode::OK,
|
||||
StatusCode::NOT_FOUND,
|
||||
];
|
||||
ok::<_, ()>(Response::new(statuses[indx]))
|
||||
ok::<_, Error>(Response::new(statuses[indx]))
|
||||
})
|
||||
.rustls(tls_config())
|
||||
})
|
||||
|
@ -218,7 +218,7 @@ async fn test_h2_headers() {
|
|||
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST ",
|
||||
));
|
||||
}
|
||||
ok::<_, ()>(config.body(data.clone()))
|
||||
ok::<_, Error>(config.body(data.clone()))
|
||||
})
|
||||
.rustls(tls_config())
|
||||
}).await;
|
||||
|
@ -257,7 +257,7 @@ const STR: &str = "Hello World Hello World Hello World Hello World Hello World \
|
|||
async fn test_h2_body2() {
|
||||
let mut srv = test_server(move || {
|
||||
HttpService::build()
|
||||
.h2(|_| ok::<_, ()>(Response::ok().set_body(STR)))
|
||||
.h2(|_| ok::<_, Error>(Response::ok().set_body(STR)))
|
||||
.rustls(tls_config())
|
||||
})
|
||||
.await;
|
||||
|
@ -274,7 +274,7 @@ async fn test_h2_body2() {
|
|||
async fn test_h2_head_empty() {
|
||||
let mut srv = test_server(move || {
|
||||
HttpService::build()
|
||||
.finish(|_| ok::<_, ()>(Response::ok().set_body(STR)))
|
||||
.finish(|_| ok::<_, Error>(Response::ok().set_body(STR)))
|
||||
.rustls(tls_config())
|
||||
})
|
||||
.await;
|
||||
|
@ -300,7 +300,7 @@ async fn test_h2_head_empty() {
|
|||
async fn test_h2_head_binary() {
|
||||
let mut srv = test_server(move || {
|
||||
HttpService::build()
|
||||
.h2(|_| ok::<_, ()>(Response::ok().set_body(STR)))
|
||||
.h2(|_| ok::<_, Error>(Response::ok().set_body(STR)))
|
||||
.rustls(tls_config())
|
||||
})
|
||||
.await;
|
||||
|
@ -325,7 +325,7 @@ async fn test_h2_head_binary() {
|
|||
async fn test_h2_head_binary2() {
|
||||
let srv = test_server(move || {
|
||||
HttpService::build()
|
||||
.h2(|_| ok::<_, ()>(Response::ok().set_body(STR)))
|
||||
.h2(|_| ok::<_, Error>(Response::ok().set_body(STR)))
|
||||
.rustls(tls_config())
|
||||
})
|
||||
.await;
|
||||
|
@ -348,7 +348,7 @@ async fn test_h2_body_length() {
|
|||
HttpService::build()
|
||||
.h2(|_| {
|
||||
let body = once(ok(Bytes::from_static(STR.as_ref())));
|
||||
ok::<_, ()>(
|
||||
ok::<_, Error>(
|
||||
Response::ok().set_body(SizedStream::new(STR.len() as u64, body)),
|
||||
)
|
||||
})
|
||||
|
@ -370,7 +370,7 @@ async fn test_h2_body_chunked_explicit() {
|
|||
HttpService::build()
|
||||
.h2(|_| {
|
||||
let body = once(ok::<_, Error>(Bytes::from_static(STR.as_ref())));
|
||||
ok::<_, ()>(
|
||||
ok::<_, Error>(
|
||||
Response::build(StatusCode::OK)
|
||||
.insert_header((header::TRANSFER_ENCODING, "chunked"))
|
||||
.streaming(body),
|
||||
|
@ -396,9 +396,9 @@ async fn test_h2_response_http_error_handling() {
|
|||
let mut srv = test_server(move || {
|
||||
HttpService::build()
|
||||
.h2(fn_factory_with_config(|_: ()| {
|
||||
ok::<_, ()>(fn_service(|_| {
|
||||
ok::<_, Error>(fn_service(|_| {
|
||||
let broken_header = Bytes::from_static(b"\0\0\0");
|
||||
ok::<_, ()>(
|
||||
ok::<_, Error>(
|
||||
Response::build(StatusCode::OK)
|
||||
.insert_header((http::header::CONTENT_TYPE, broken_header))
|
||||
.body(STR),
|
||||
|
|
|
@ -28,7 +28,7 @@ async fn test_h1() {
|
|||
.client_disconnect(1000)
|
||||
.h1(|req: Request| {
|
||||
assert!(req.peer_addr().is_some());
|
||||
ok::<_, ()>(Response::ok())
|
||||
ok::<_, Error>(Response::ok())
|
||||
})
|
||||
.tcp()
|
||||
})
|
||||
|
@ -48,7 +48,7 @@ async fn test_h1_2() {
|
|||
.finish(|req: Request| {
|
||||
assert!(req.peer_addr().is_some());
|
||||
assert_eq!(req.version(), http::Version::HTTP_11);
|
||||
ok::<_, ()>(Response::ok())
|
||||
ok::<_, Error>(Response::ok())
|
||||
})
|
||||
.tcp()
|
||||
})
|
||||
|
@ -69,7 +69,7 @@ async fn test_expect_continue() {
|
|||
err(error::ErrorPreconditionFailed("error"))
|
||||
}
|
||||
}))
|
||||
.finish(|_| ok::<_, ()>(Response::ok()))
|
||||
.finish(|_| ok::<_, Error>(Response::ok()))
|
||||
.tcp()
|
||||
})
|
||||
.await;
|
||||
|
@ -100,7 +100,7 @@ async fn test_expect_continue_h1() {
|
|||
}
|
||||
})
|
||||
}))
|
||||
.h1(fn_service(|_| ok::<_, ()>(Response::ok())))
|
||||
.h1(fn_service(|_| ok::<_, Error>(Response::ok())))
|
||||
.tcp()
|
||||
})
|
||||
.await;
|
||||
|
@ -181,7 +181,7 @@ async fn test_slow_request() {
|
|||
let srv = test_server(|| {
|
||||
HttpService::build()
|
||||
.client_timeout(100)
|
||||
.finish(|_| ok::<_, ()>(Response::ok()))
|
||||
.finish(|_| ok::<_, Error>(Response::ok()))
|
||||
.tcp()
|
||||
})
|
||||
.await;
|
||||
|
@ -197,7 +197,7 @@ async fn test_slow_request() {
|
|||
async fn test_http1_malformed_request() {
|
||||
let srv = test_server(|| {
|
||||
HttpService::build()
|
||||
.h1(|_| ok::<_, ()>(Response::ok()))
|
||||
.h1(|_| ok::<_, Error>(Response::ok()))
|
||||
.tcp()
|
||||
})
|
||||
.await;
|
||||
|
@ -213,7 +213,7 @@ async fn test_http1_malformed_request() {
|
|||
async fn test_http1_keepalive() {
|
||||
let srv = test_server(|| {
|
||||
HttpService::build()
|
||||
.h1(|_| ok::<_, ()>(Response::ok()))
|
||||
.h1(|_| ok::<_, Error>(Response::ok()))
|
||||
.tcp()
|
||||
})
|
||||
.await;
|
||||
|
@ -235,7 +235,7 @@ async fn test_http1_keepalive_timeout() {
|
|||
let srv = test_server(|| {
|
||||
HttpService::build()
|
||||
.keep_alive(1)
|
||||
.h1(|_| ok::<_, ()>(Response::ok()))
|
||||
.h1(|_| ok::<_, Error>(Response::ok()))
|
||||
.tcp()
|
||||
})
|
||||
.await;
|
||||
|
@ -256,7 +256,7 @@ async fn test_http1_keepalive_timeout() {
|
|||
async fn test_http1_keepalive_close() {
|
||||
let srv = test_server(|| {
|
||||
HttpService::build()
|
||||
.h1(|_| ok::<_, ()>(Response::ok()))
|
||||
.h1(|_| ok::<_, Error>(Response::ok()))
|
||||
.tcp()
|
||||
})
|
||||
.await;
|
||||
|
@ -277,7 +277,7 @@ async fn test_http1_keepalive_close() {
|
|||
async fn test_http10_keepalive_default_close() {
|
||||
let srv = test_server(|| {
|
||||
HttpService::build()
|
||||
.h1(|_| ok::<_, ()>(Response::ok()))
|
||||
.h1(|_| ok::<_, Error>(Response::ok()))
|
||||
.tcp()
|
||||
})
|
||||
.await;
|
||||
|
@ -297,7 +297,7 @@ async fn test_http10_keepalive_default_close() {
|
|||
async fn test_http10_keepalive() {
|
||||
let srv = test_server(|| {
|
||||
HttpService::build()
|
||||
.h1(|_| ok::<_, ()>(Response::ok()))
|
||||
.h1(|_| ok::<_, Error>(Response::ok()))
|
||||
.tcp()
|
||||
})
|
||||
.await;
|
||||
|
@ -325,7 +325,7 @@ async fn test_http1_keepalive_disabled() {
|
|||
let srv = test_server(|| {
|
||||
HttpService::build()
|
||||
.keep_alive(KeepAlive::Disabled)
|
||||
.h1(|_| ok::<_, ()>(Response::ok()))
|
||||
.h1(|_| ok::<_, Error>(Response::ok()))
|
||||
.tcp()
|
||||
})
|
||||
.await;
|
||||
|
@ -360,7 +360,7 @@ async fn test_content_length() {
|
|||
StatusCode::OK,
|
||||
StatusCode::NOT_FOUND,
|
||||
];
|
||||
ok::<_, ()>(Response::new(statuses[indx]))
|
||||
ok::<_, Error>(Response::new(statuses[indx]))
|
||||
})
|
||||
.tcp()
|
||||
})
|
||||
|
@ -415,7 +415,7 @@ async fn test_h1_headers() {
|
|||
TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST ",
|
||||
));
|
||||
}
|
||||
ok::<_, ()>(builder.body(data.clone()))
|
||||
ok::<_, Error>(builder.body(data.clone()))
|
||||
}).tcp()
|
||||
}).await;
|
||||
|
||||
|
@ -453,7 +453,7 @@ const STR: &str = "Hello World Hello World Hello World Hello World Hello World \
|
|||
async fn test_h1_body() {
|
||||
let mut srv = test_server(|| {
|
||||
HttpService::build()
|
||||
.h1(|_| ok::<_, ()>(Response::ok().set_body(STR)))
|
||||
.h1(|_| ok::<_, Error>(Response::ok().set_body(STR)))
|
||||
.tcp()
|
||||
})
|
||||
.await;
|
||||
|
@ -470,7 +470,7 @@ async fn test_h1_body() {
|
|||
async fn test_h1_head_empty() {
|
||||
let mut srv = test_server(|| {
|
||||
HttpService::build()
|
||||
.h1(|_| ok::<_, ()>(Response::ok().set_body(STR)))
|
||||
.h1(|_| ok::<_, Error>(Response::ok().set_body(STR)))
|
||||
.tcp()
|
||||
})
|
||||
.await;
|
||||
|
@ -495,7 +495,7 @@ async fn test_h1_head_empty() {
|
|||
async fn test_h1_head_binary() {
|
||||
let mut srv = test_server(|| {
|
||||
HttpService::build()
|
||||
.h1(|_| ok::<_, ()>(Response::ok().set_body(STR)))
|
||||
.h1(|_| ok::<_, Error>(Response::ok().set_body(STR)))
|
||||
.tcp()
|
||||
})
|
||||
.await;
|
||||
|
@ -520,7 +520,7 @@ async fn test_h1_head_binary() {
|
|||
async fn test_h1_head_binary2() {
|
||||
let srv = test_server(|| {
|
||||
HttpService::build()
|
||||
.h1(|_| ok::<_, ()>(Response::ok().set_body(STR)))
|
||||
.h1(|_| ok::<_, Error>(Response::ok().set_body(STR)))
|
||||
.tcp()
|
||||
})
|
||||
.await;
|
||||
|
@ -543,7 +543,7 @@ async fn test_h1_body_length() {
|
|||
HttpService::build()
|
||||
.h1(|_| {
|
||||
let body = once(ok(Bytes::from_static(STR.as_ref())));
|
||||
ok::<_, ()>(
|
||||
ok::<_, Error>(
|
||||
Response::ok().set_body(SizedStream::new(STR.len() as u64, body)),
|
||||
)
|
||||
})
|
||||
|
@ -565,7 +565,7 @@ async fn test_h1_body_chunked_explicit() {
|
|||
HttpService::build()
|
||||
.h1(|_| {
|
||||
let body = once(ok::<_, Error>(Bytes::from_static(STR.as_ref())));
|
||||
ok::<_, ()>(
|
||||
ok::<_, Error>(
|
||||
Response::build(StatusCode::OK)
|
||||
.insert_header((header::TRANSFER_ENCODING, "chunked"))
|
||||
.streaming(body),
|
||||
|
@ -600,7 +600,7 @@ async fn test_h1_body_chunked_implicit() {
|
|||
HttpService::build()
|
||||
.h1(|_| {
|
||||
let body = once(ok::<_, Error>(Bytes::from_static(STR.as_ref())));
|
||||
ok::<_, ()>(Response::build(StatusCode::OK).streaming(body))
|
||||
ok::<_, Error>(Response::build(StatusCode::OK).streaming(body))
|
||||
})
|
||||
.tcp()
|
||||
})
|
||||
|
@ -629,7 +629,7 @@ async fn test_h1_response_http_error_handling() {
|
|||
HttpService::build()
|
||||
.h1(fn_service(|_| {
|
||||
let broken_header = Bytes::from_static(b"\0\0\0");
|
||||
ok::<_, ()>(
|
||||
ok::<_, Error>(
|
||||
Response::build(StatusCode::OK)
|
||||
.insert_header((http::header::CONTENT_TYPE, broken_header))
|
||||
.body(STR),
|
||||
|
@ -673,7 +673,7 @@ async fn test_h1_on_connect() {
|
|||
})
|
||||
.h1(|req: Request| {
|
||||
assert!(req.extensions().contains::<isize>());
|
||||
ok::<_, ()>(Response::ok())
|
||||
ok::<_, Error>(Response::ok())
|
||||
})
|
||||
.tcp()
|
||||
})
|
||||
|
|
|
@ -91,7 +91,7 @@ async fn test_simple() {
|
|||
let ws_service = ws_service.clone();
|
||||
HttpService::build()
|
||||
.upgrade(fn_factory(move || future::ok::<_, ()>(ws_service.clone())))
|
||||
.finish(|_| future::ok::<_, ()>(Response::not_found()))
|
||||
.finish(|_| future::ok::<_, Error>(Response::not_found()))
|
||||
.tcp()
|
||||
}
|
||||
})
|
||||
|
|
Loading…
Reference in New Issue