summaryrefslogtreecommitdiff
path: root/src/authorization
diff options
context:
space:
mode:
Diffstat (limited to 'src/authorization')
-rw-r--r--src/authorization/cedar_authorizer.rs35
1 files changed, 15 insertions, 20 deletions
diff --git a/src/authorization/cedar_authorizer.rs b/src/authorization/cedar_authorizer.rs
index 49659d35..44bc9e06 100644
--- a/src/authorization/cedar_authorizer.rs
+++ b/src/authorization/cedar_authorizer.rs
@@ -38,31 +38,20 @@ impl Authorizer for CedarAuthorizer {
#[cfg(test)]
mod tests {
use super::*;
- use envoy_types::pb::envoy::service::auth::v3::{AttributeContext, attribute_context};
+ 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;
- fn create_request(
- f: impl std::ops::FnOnce(&mut attribute_context::HttpRequest),
- ) -> CheckRequest {
+ fn create_request(f: impl std::ops::FnOnce(&mut HttpRequest)) -> CheckRequest {
please::build_with(|item: &mut CheckRequest| {
item.attributes = Some(please::build_with(|item: &mut AttributeContext| {
- item.request = Some(please::build_with(
- |item: &mut attribute_context::Request| {
- item.http = Some(please::build_with(
- |item: &mut attribute_context::HttpRequest| f(item),
- ));
- },
- ));
+ item.request = Some(please::build_with(|item: &mut Request| {
+ item.http = Some(please::build_with(|item: &mut HttpRequest| f(item)));
+ }));
}));
})
}
- fn create_test_request_with_headers(headers: HashMap<String, String>) -> CheckRequest {
- return create_request(|item: &mut attribute_context::HttpRequest| {
- item.headers = headers;
- });
- }
-
#[test]
fn test_cedar_authorizer_allows_valid_token() {
let authorizer = CedarAuthorizer::new();
@@ -71,7 +60,9 @@ mod tests {
"authorization".to_string(),
"Bearer valid-token".to_string(),
);
- let request = create_test_request_with_headers(headers);
+ let request = create_request(|item: &mut HttpRequest| {
+ item.headers = headers;
+ });
let result = authorizer.authorize(request);
assert!(result);
@@ -85,7 +76,9 @@ mod tests {
"authorization".to_string(),
"Bearer invalid-token".to_string(),
);
- let request = create_test_request_with_headers(headers);
+ let request = create_request(|item: &mut HttpRequest| {
+ item.headers = headers;
+ });
let result = authorizer.authorize(request);
assert!(!result);
@@ -95,7 +88,9 @@ mod tests {
fn test_cedar_authorizer_denies_missing_header() {
let authorizer = CedarAuthorizer::new();
let headers = HashMap::new();
- let request = create_test_request_with_headers(headers);
+ let request = create_request(|item: &mut HttpRequest| {
+ item.headers = headers;
+ });
let result = authorizer.authorize(request);
assert!(!result);