This commit is contained in:
Damian Lesiuk 2020-09-12 16:51:18 +02:00
parent 7344f639ac
commit 4c9d4d5b86
3 changed files with 20 additions and 3 deletions

2
.gitignore vendored
View File

@ -15,4 +15,4 @@ guide/build/
**/*.rs.bk **/*.rs.bk
# Configuration directory generated by CLion # Configuration directory generated by CLion
.idea .idea

View File

@ -14,4 +14,4 @@ pub mod normalize;
pub use self::condition::Condition; pub use self::condition::Condition;
pub use self::defaultheaders::DefaultHeaders; pub use self::defaultheaders::DefaultHeaders;
pub use self::logger::Logger; pub use self::logger::Logger;
pub use self::normalize::NormalizePath; pub use self::normalize::NormalizePath;

View File

@ -16,8 +16,9 @@ use futures_util::ready;
use rand::{distributions::Alphanumeric, Rng}; use rand::{distributions::Alphanumeric, Rng};
use actix_web::dev::BodyEncoding; use actix_web::dev::BodyEncoding;
use actix_web::middleware::Compress; use actix_web::middleware::{Compress, NormalizePath};
use actix_web::{dev, test, web, App, Error, HttpResponse}; use actix_web::{dev, test, web, App, Error, HttpResponse};
use actix_web::middleware::normalize::TrailingSlash;
const STR: &str = "Hello World Hello World Hello World Hello World Hello World \ const STR: &str = "Hello World Hello World Hello World Hello World Hello World \
Hello World Hello World Hello World Hello World Hello World \ Hello World Hello World Hello World Hello World Hello World \
@ -866,6 +867,22 @@ async fn test_slow_request() {
assert!(data.starts_with("HTTP/1.1 408 Request Timeout")); assert!(data.starts_with("HTTP/1.1 408 Request Timeout"));
} }
#[actix_rt::test]
async fn test_normalize() {
let srv = test::start_with(test::config().h1(), || {
App::new()
.wrap(NormalizePath::new(TrailingSlash::Trim))
.service(web::resource("/one").route(web::to(|| HttpResponse::Ok().finish())))
});
let response = srv
.get("/one/")
.send()
.await
.unwrap();
assert!(response.status().is_success());
}
// #[cfg(feature = "openssl")] // #[cfg(feature = "openssl")]
// #[actix_rt::test] // #[actix_rt::test]
// async fn test_ssl_handshake_timeout() { // async fn test_ssl_handshake_timeout() {