use super::auth_strategy::Credentials;
#[derive(Debug, Clone, PartialEq)]
pub struct RequestCredentials {
pub header_name: String,
pub value: String,
}
impl RequestCredentials {
pub fn into_credentials_map(self) -> Credentials {
let mut map = Credentials::new();
map.insert("request_header_name".to_string(), self.header_name);
map.insert("request_header_value".to_string(), self.value);
map
}
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn converts_into_the_credentials_map_shape() {
let creds = RequestCredentials {
header_name: "X-Api-Key".to_string(),
value: "secret".to_string(),
};
let map = creds.into_credentials_map();
assert_eq!(
map.get("request_header_name").map(String::as_str),
Some("X-Api-Key")
);
assert_eq!(
map.get("request_header_value").map(String::as_str),
Some("secret")
);
}
}