From 7572013fa322fd0c86f96f32e4abeb6a21c30124 Mon Sep 17 00:00:00 2001 From: ibraheemdev Date: Wed, 24 Mar 2021 09:45:40 -0400 Subject: [PATCH] add tests for header extractor --- src/types/header.rs | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/src/types/header.rs b/src/types/header.rs index b044aaa73..0e34740bb 100644 --- a/src/types/header.rs +++ b/src/types/header.rs @@ -82,3 +82,32 @@ where } } } + +#[cfg(test)] +mod tests { + use super::*; + use crate::http::{header, Method}; + use crate::test::TestRequest; + + #[actix_rt::test] + async fn test_header_extract() { + let (req, mut pl) = TestRequest::default() + .insert_header((header::CONTENT_TYPE, mime::APPLICATION_JSON)) + .insert_header((header::ALLOW, header::Allow(vec![Method::GET]))) + .to_http_parts(); + + let s = Header::::from_request(&req, &mut pl) + .await + .unwrap(); + assert_eq!(s.into_inner().0, mime::APPLICATION_JSON); + + let s = Header::::from_request(&req, &mut pl) + .await + .unwrap(); + assert_eq!(s.into_inner().0, vec![Method::GET]); + + assert!(Header::::from_request(&req, &mut pl) + .await + .is_err()); + } +}