diff options
| -rw-r--r-- | tests/authorization/cedar_authorizer_test.rs | 3 | ||||
| -rw-r--r-- | tests/authorization/check_service_test.rs | 3 | ||||
| -rw-r--r-- | tests/common/factory_bot.rs | 31 | ||||
| -rw-r--r-- | tests/common/mod.rs | 33 | ||||
| -rw-r--r-- | tests/integration_tests.rs | 8 |
5 files changed, 37 insertions, 41 deletions
diff --git a/tests/authorization/cedar_authorizer_test.rs b/tests/authorization/cedar_authorizer_test.rs index c74a2042..b13f48ad 100644 --- a/tests/authorization/cedar_authorizer_test.rs +++ b/tests/authorization/cedar_authorizer_test.rs @@ -1,7 +1,6 @@ #[cfg(test)] mod tests { - use crate::common::factory_bot::create_request; - use crate::common::*; + use crate::common::factory_bot::*; use authzd::Authorizer; use authzd::CedarAuthorizer; use envoy_types::pb::envoy::service::auth::v3::attribute_context::HttpRequest; diff --git a/tests/authorization/check_service_test.rs b/tests/authorization/check_service_test.rs index dadb6d1a..0582417e 100644 --- a/tests/authorization/check_service_test.rs +++ b/tests/authorization/check_service_test.rs @@ -1,7 +1,6 @@ #[cfg(test)] mod tests { - use crate::common::create_token; - use crate::common::factory_bot::create_request; + use crate::common::factory_bot::*; use authzd::CedarAuthorizer; use authzd::CheckService; use envoy_types::ext_authz::v3::pb::Authorization; diff --git a/tests/common/factory_bot.rs b/tests/common/factory_bot.rs index 17c4c3d5..bd2cb163 100644 --- a/tests/common/factory_bot.rs +++ b/tests/common/factory_bot.rs @@ -1,6 +1,19 @@ use envoy_types::ext_authz::v3::pb::CheckRequest; use envoy_types::pb::envoy::service::auth::v3::AttributeContext; use envoy_types::pb::envoy::service::auth::v3::attribute_context::{HttpRequest, Request}; +use std::collections::HashMap; + +pub fn build<T: Default>() -> T { + return please::build(); +} + +pub fn build_with<T, F>(initializer: F) -> T +where + T: Default, + F: std::ops::FnOnce(&mut T), +{ + return please::build_with(initializer); +} pub fn create_request(f: impl std::ops::FnOnce(&mut HttpRequest)) -> CheckRequest { crate::common::build_with(|item: &mut CheckRequest| { @@ -11,3 +24,21 @@ pub fn create_request(f: impl std::ops::FnOnce(&mut HttpRequest)) -> CheckReques })); }) } + +pub fn create_test_request_with_headers( + headers: HashMap<String, String>, +) -> tonic::Request<CheckRequest> { + tonic::Request::new(create_request(|item: &mut HttpRequest| { + item.headers = headers; + })) +} + +pub fn create_headers_with_auth(auth_value: &str) -> HashMap<String, String> { + let mut headers = build::<HashMap<String, String>>(); + headers.insert(String::from("authorization"), auth_value.to_string()); + headers +} + +pub fn create_token() -> String { + return String::from("valid-token"); +} diff --git a/tests/common/mod.rs b/tests/common/mod.rs index 9b089f16..4db87a2c 100644 --- a/tests/common/mod.rs +++ b/tests/common/mod.rs @@ -1,36 +1,3 @@ pub mod factory_bot; -use envoy_types::ext_authz::v3::pb::CheckRequest; -use envoy_types::pb::envoy::service::auth::v3::attribute_context::HttpRequest; use factory_bot::*; -use std::collections::HashMap; - -pub fn build<T: Default>() -> T { - return please::build(); -} - -pub fn build_with<T, F>(initializer: F) -> T -where - T: Default, - F: std::ops::FnOnce(&mut T), -{ - return please::build_with(initializer); -} - -pub fn create_test_request_with_headers( - headers: HashMap<String, String>, -) -> tonic::Request<CheckRequest> { - tonic::Request::new(create_request(|item: &mut HttpRequest| { - item.headers = headers; - })) -} - -pub fn create_headers_with_auth(auth_value: &str) -> HashMap<String, String> { - let mut headers = build::<HashMap<String, String>>(); - headers.insert(String::from("authorization"), auth_value.to_string()); - headers -} - -pub fn create_token() -> String { - return String::from("valid-token"); -} diff --git a/tests/integration_tests.rs b/tests/integration_tests.rs index 2269c7f7..fc31a037 100644 --- a/tests/integration_tests.rs +++ b/tests/integration_tests.rs @@ -10,8 +10,8 @@ async fn test_success_response() { let authorizer = Arc::new(CedarAuthorizer::new()); let server = CheckService::new(authorizer); - let headers = common::create_headers_with_auth("Bearer valid-token"); - let request = common::create_test_request_with_headers(headers); + let headers = common::factory_bot::create_headers_with_auth("Bearer valid-token"); + let request = common::factory_bot::create_test_request_with_headers(headers); let response = server.check(request).await; assert!(response.is_ok()); @@ -36,8 +36,8 @@ async fn test_multiple() { ]; for (auth_value, should_succeed) in test_cases { - let headers = common::create_headers_with_auth(auth_value); - let request = common::create_test_request_with_headers(headers); + let headers = common::factory_bot::create_headers_with_auth(auth_value); + let request = common::factory_bot::create_test_request_with_headers(headers); let response = server.check(request).await; assert!(response.is_ok()); |
