From 468f1b652080c94d5d8668cf8f6e650af00a782d Mon Sep 17 00:00:00 2001 From: mo khan Date: Fri, 20 Jun 2025 11:09:15 -0600 Subject: refactor: extract an x module --- src/authorization/cedar_authorizer.rs | 32 ++++++++++++++++++-------------- 1 file changed, 18 insertions(+), 14 deletions(-) (limited to 'src/authorization') diff --git a/src/authorization/cedar_authorizer.rs b/src/authorization/cedar_authorizer.rs index 547a1318..16a3f405 100644 --- a/src/authorization/cedar_authorizer.rs +++ b/src/authorization/cedar_authorizer.rs @@ -35,17 +35,12 @@ impl Authorizer for CedarAuthorizer { } } -#[cfg(test)] -mod tests { - use super::*; - use envoy_types::pb::envoy::service::auth::v3::{AttributeContext, attribute_context}; - use std::collections::HashMap; - - fn build() -> T { +mod x { + pub fn build() -> T { T::default() } - fn build_with(initializer: F) -> T + pub fn build_with(initializer: F) -> T where T: Default, F: std::ops::FnOnce(&mut T), @@ -54,14 +49,23 @@ mod tests { initializer(&mut item); item } +} + +#[cfg(test)] +mod tests { + use super::*; + use envoy_types::pb::envoy::service::auth::v3::{AttributeContext, attribute_context}; + use std::collections::HashMap; fn create_test_request_with_headers(headers: HashMap) -> CheckRequest { - build_with(|item: &mut CheckRequest| { - item.attributes = Some(build_with(|item: &mut AttributeContext| { - item.request = Some(build_with(|item: &mut attribute_context::Request| { - item.http = Some(build_with(|item: &mut attribute_context::HttpRequest| { - item.headers = headers; - })); + x::build_with(|item: &mut CheckRequest| { + item.attributes = Some(x::build_with(|item: &mut AttributeContext| { + item.request = Some(x::build_with(|item: &mut attribute_context::Request| { + item.http = Some(x::build_with( + |item: &mut attribute_context::HttpRequest| { + item.headers = headers; + }, + )); })); })); }) -- cgit v1.2.3