2019-03-17 21:55:03 +01:00
|
|
|
use actix_http::HttpService;
|
|
|
|
use actix_http_test::TestServer;
|
2019-03-31 09:23:15 +02:00
|
|
|
use actix_web_codegen::get;
|
|
|
|
use actix_web::{http, App, HttpResponse, Responder};
|
|
|
|
use futures::{Future, future};
|
2019-03-17 21:55:03 +01:00
|
|
|
|
2019-03-31 09:23:15 +02:00
|
|
|
//fn guard_head(head: &actix_web::dev::RequestHead) -> bool {
|
|
|
|
// true
|
|
|
|
//}
|
|
|
|
|
|
|
|
//#[get("/test", guard="guard_head")]
|
2019-03-17 21:55:03 +01:00
|
|
|
#[get("/test")]
|
|
|
|
fn test() -> impl Responder {
|
|
|
|
HttpResponse::Ok()
|
|
|
|
}
|
|
|
|
|
2019-03-31 09:23:15 +02:00
|
|
|
#[get("/test")]
|
|
|
|
fn auto_async() -> impl Future<Item=HttpResponse, Error=actix_web::Error> {
|
|
|
|
future::ok(HttpResponse::Ok().finish())
|
|
|
|
}
|
|
|
|
|
|
|
|
#[get("/test")]
|
|
|
|
fn auto_sync() -> impl Future<Item=HttpResponse, Error=actix_web::Error> {
|
|
|
|
future::ok(HttpResponse::Ok().finish())
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2019-03-17 21:55:03 +01:00
|
|
|
#[test]
|
|
|
|
fn test_body() {
|
|
|
|
let mut srv = TestServer::new(|| HttpService::new(App::new().service(test)));
|
2019-03-31 09:23:15 +02:00
|
|
|
let request = srv.request(http::Method::GET, srv.url("/test"));
|
|
|
|
let response = srv.block_on(request.send()).unwrap();
|
|
|
|
assert!(response.status().is_success());
|
|
|
|
|
|
|
|
let mut srv = TestServer::new(|| HttpService::new(App::new().service(auto_sync)));
|
|
|
|
let request = srv.request(http::Method::GET, srv.url("/test"));
|
|
|
|
let response = srv.block_on(request.send()).unwrap();
|
|
|
|
assert!(response.status().is_success());
|
|
|
|
}
|
|
|
|
|
|
|
|
#[test]
|
|
|
|
fn test_auto_async() {
|
|
|
|
let mut srv = TestServer::new(|| HttpService::new(App::new().service(auto_async)));
|
2019-03-17 21:55:03 +01:00
|
|
|
|
2019-03-26 20:50:51 +01:00
|
|
|
let request = srv.request(http::Method::GET, srv.url("/test"));
|
|
|
|
let response = srv.block_on(request.send()).unwrap();
|
2019-03-17 21:55:03 +01:00
|
|
|
assert!(response.status().is_success());
|
|
|
|
}
|