mirror of
https://github.com/fafhrd91/actix-web
synced 2025-01-18 05:41:50 +01:00
update actix-web-codegen tests
This commit is contained in:
parent
95e2a0ef2e
commit
0de101bc4d
@ -37,7 +37,7 @@ members = [
|
|||||||
#"actix-session",
|
#"actix-session",
|
||||||
"actix-identity",
|
"actix-identity",
|
||||||
#"actix-multipart",
|
#"actix-multipart",
|
||||||
#"actix-web-actors",
|
"actix-web-actors",
|
||||||
"actix-web-codegen",
|
"actix-web-codegen",
|
||||||
"test-server",
|
"test-server",
|
||||||
]
|
]
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "actix-web-codegen"
|
name = "actix-web-codegen"
|
||||||
version = "0.1.3"
|
version = "0.2.0-alpha.1"
|
||||||
description = "Actix web proc macros"
|
description = "Actix web proc macros"
|
||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
authors = ["Nikolay Kim <fafhrd91@gmail.com>"]
|
authors = ["Nikolay Kim <fafhrd91@gmail.com>"]
|
||||||
@ -17,7 +17,7 @@ syn = { version = "1", features = ["full", "parsing"] }
|
|||||||
proc-macro2 = "1"
|
proc-macro2 = "1"
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
actix-web = { version = "1.0.0" }
|
actix-web = { version = "2.0.0-alph.a" }
|
||||||
actix-http = { version = "0.2.4", features=["ssl"] }
|
actix-http = { version = "0.3.0-alpha.1", features=["openssl"] }
|
||||||
actix-http-test = { version = "0.2.0", features=["ssl"] }
|
actix-http-test = { version = "0.3.0-alpha.1", features=["openssl"] }
|
||||||
futures = { version = "0.1" }
|
futures = { version = "0.3.1" }
|
||||||
|
@ -35,8 +35,8 @@
|
|||||||
//! use futures::{future, Future};
|
//! use futures::{future, Future};
|
||||||
//!
|
//!
|
||||||
//! #[get("/test")]
|
//! #[get("/test")]
|
||||||
//! fn async_test() -> impl Future<Item=HttpResponse, Error=actix_web::Error> {
|
//! async fn async_test() -> Result<HttpResponse, actix_web::Error> {
|
||||||
//! future::ok(HttpResponse::Ok().finish())
|
//! Ok(HttpResponse::Ok().finish())
|
||||||
//! }
|
//! }
|
||||||
//! ```
|
//! ```
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
use actix_http::HttpService;
|
use actix_http::HttpService;
|
||||||
use actix_http_test::TestServer;
|
use actix_http_test::{block_on, TestServer};
|
||||||
use actix_web::{http, web::Path, App, HttpResponse, Responder};
|
use actix_web::{http, web::Path, App, HttpResponse, Responder};
|
||||||
use actix_web_codegen::{connect, delete, get, head, options, patch, post, put, trace};
|
use actix_web_codegen::{connect, delete, get, head, options, patch, post, put, trace};
|
||||||
use futures::{future, Future};
|
use futures::{future, Future};
|
||||||
@ -45,12 +45,12 @@ fn trace_test() -> impl Responder {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#[get("/test")]
|
#[get("/test")]
|
||||||
fn auto_async() -> impl Future<Item = HttpResponse, Error = actix_web::Error> {
|
fn auto_async() -> impl Future<Output = Result<HttpResponse, actix_web::Error>> {
|
||||||
future::ok(HttpResponse::Ok().finish())
|
future::ok(HttpResponse::Ok().finish())
|
||||||
}
|
}
|
||||||
|
|
||||||
#[get("/test")]
|
#[get("/test")]
|
||||||
fn auto_sync() -> impl Future<Item = HttpResponse, Error = actix_web::Error> {
|
fn auto_sync() -> impl Future<Output = Result<HttpResponse, actix_web::Error>> {
|
||||||
future::ok(HttpResponse::Ok().finish())
|
future::ok(HttpResponse::Ok().finish())
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -71,87 +71,93 @@ fn get_param_test(_: Path<String>) -> impl Responder {
|
|||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_params() {
|
fn test_params() {
|
||||||
let mut srv = TestServer::new(|| {
|
block_on(async {
|
||||||
HttpService::new(
|
let srv = TestServer::start(|| {
|
||||||
App::new()
|
HttpService::new(
|
||||||
.service(get_param_test)
|
App::new()
|
||||||
.service(put_param_test)
|
.service(get_param_test)
|
||||||
.service(delete_param_test),
|
.service(put_param_test)
|
||||||
)
|
.service(delete_param_test),
|
||||||
});
|
)
|
||||||
|
});
|
||||||
|
|
||||||
let request = srv.request(http::Method::GET, srv.url("/test/it"));
|
let request = srv.request(http::Method::GET, srv.url("/test/it"));
|
||||||
let response = srv.block_on(request.send()).unwrap();
|
let response = request.send().await.unwrap();
|
||||||
assert_eq!(response.status(), http::StatusCode::OK);
|
assert_eq!(response.status(), http::StatusCode::OK);
|
||||||
|
|
||||||
let request = srv.request(http::Method::PUT, srv.url("/test/it"));
|
let request = srv.request(http::Method::PUT, srv.url("/test/it"));
|
||||||
let response = srv.block_on(request.send()).unwrap();
|
let response = request.send().await.unwrap();
|
||||||
assert_eq!(response.status(), http::StatusCode::CREATED);
|
assert_eq!(response.status(), http::StatusCode::CREATED);
|
||||||
|
|
||||||
let request = srv.request(http::Method::DELETE, srv.url("/test/it"));
|
let request = srv.request(http::Method::DELETE, srv.url("/test/it"));
|
||||||
let response = srv.block_on(request.send()).unwrap();
|
let response = request.send().await.unwrap();
|
||||||
assert_eq!(response.status(), http::StatusCode::NO_CONTENT);
|
assert_eq!(response.status(), http::StatusCode::NO_CONTENT);
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_body() {
|
fn test_body() {
|
||||||
let mut srv = TestServer::new(|| {
|
block_on(async {
|
||||||
HttpService::new(
|
let srv = TestServer::start(|| {
|
||||||
App::new()
|
HttpService::new(
|
||||||
.service(post_test)
|
App::new()
|
||||||
.service(put_test)
|
.service(post_test)
|
||||||
.service(head_test)
|
.service(put_test)
|
||||||
.service(connect_test)
|
.service(head_test)
|
||||||
.service(options_test)
|
.service(connect_test)
|
||||||
.service(trace_test)
|
.service(options_test)
|
||||||
.service(patch_test)
|
.service(trace_test)
|
||||||
.service(test),
|
.service(patch_test)
|
||||||
)
|
.service(test),
|
||||||
});
|
)
|
||||||
let request = srv.request(http::Method::GET, srv.url("/test"));
|
});
|
||||||
let response = srv.block_on(request.send()).unwrap();
|
let request = srv.request(http::Method::GET, srv.url("/test"));
|
||||||
assert!(response.status().is_success());
|
let response = request.send().await.unwrap();
|
||||||
|
assert!(response.status().is_success());
|
||||||
|
|
||||||
let request = srv.request(http::Method::HEAD, srv.url("/test"));
|
let request = srv.request(http::Method::HEAD, srv.url("/test"));
|
||||||
let response = srv.block_on(request.send()).unwrap();
|
let response = request.send().await.unwrap();
|
||||||
assert!(response.status().is_success());
|
assert!(response.status().is_success());
|
||||||
|
|
||||||
let request = srv.request(http::Method::CONNECT, srv.url("/test"));
|
let request = srv.request(http::Method::CONNECT, srv.url("/test"));
|
||||||
let response = srv.block_on(request.send()).unwrap();
|
let response = request.send().await.unwrap();
|
||||||
assert!(response.status().is_success());
|
assert!(response.status().is_success());
|
||||||
|
|
||||||
let request = srv.request(http::Method::OPTIONS, srv.url("/test"));
|
let request = srv.request(http::Method::OPTIONS, srv.url("/test"));
|
||||||
let response = srv.block_on(request.send()).unwrap();
|
let response = request.send().await.unwrap();
|
||||||
assert!(response.status().is_success());
|
assert!(response.status().is_success());
|
||||||
|
|
||||||
let request = srv.request(http::Method::TRACE, srv.url("/test"));
|
let request = srv.request(http::Method::TRACE, srv.url("/test"));
|
||||||
let response = srv.block_on(request.send()).unwrap();
|
let response = request.send().await.unwrap();
|
||||||
assert!(response.status().is_success());
|
assert!(response.status().is_success());
|
||||||
|
|
||||||
let request = srv.request(http::Method::PATCH, srv.url("/test"));
|
let request = srv.request(http::Method::PATCH, srv.url("/test"));
|
||||||
let response = srv.block_on(request.send()).unwrap();
|
let response = request.send().await.unwrap();
|
||||||
assert!(response.status().is_success());
|
assert!(response.status().is_success());
|
||||||
|
|
||||||
let request = srv.request(http::Method::PUT, srv.url("/test"));
|
let request = srv.request(http::Method::PUT, srv.url("/test"));
|
||||||
let response = srv.block_on(request.send()).unwrap();
|
let response = request.send().await.unwrap();
|
||||||
assert!(response.status().is_success());
|
assert!(response.status().is_success());
|
||||||
assert_eq!(response.status(), http::StatusCode::CREATED);
|
assert_eq!(response.status(), http::StatusCode::CREATED);
|
||||||
|
|
||||||
let request = srv.request(http::Method::POST, srv.url("/test"));
|
let request = srv.request(http::Method::POST, srv.url("/test"));
|
||||||
let response = srv.block_on(request.send()).unwrap();
|
let response = request.send().await.unwrap();
|
||||||
assert!(response.status().is_success());
|
assert!(response.status().is_success());
|
||||||
assert_eq!(response.status(), http::StatusCode::NO_CONTENT);
|
assert_eq!(response.status(), http::StatusCode::NO_CONTENT);
|
||||||
|
|
||||||
let request = srv.request(http::Method::GET, srv.url("/test"));
|
let request = srv.request(http::Method::GET, srv.url("/test"));
|
||||||
let response = srv.block_on(request.send()).unwrap();
|
let response = request.send().await.unwrap();
|
||||||
assert!(response.status().is_success());
|
assert!(response.status().is_success());
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_auto_async() {
|
fn test_auto_async() {
|
||||||
let mut srv = TestServer::new(|| HttpService::new(App::new().service(auto_async)));
|
block_on(async {
|
||||||
|
let srv = TestServer::start(|| HttpService::new(App::new().service(auto_async)));
|
||||||
|
|
||||||
let request = srv.request(http::Method::GET, srv.url("/test"));
|
let request = srv.request(http::Method::GET, srv.url("/test"));
|
||||||
let response = srv.block_on(request.send()).unwrap();
|
let response = request.send().await.unwrap();
|
||||||
assert!(response.status().is_success());
|
assert!(response.status().is_success());
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user