From 2dbed9fec967e73b922a67245ef69f8c2324184a Mon Sep 17 00:00:00 2001 From: phoenix Date: Wed, 9 Apr 2025 02:38:20 +0000 Subject: [PATCH 1/3] token_type_change (#37) Reviewed-on: https://git.kundeng.us/phoenix/icarus_models/pulls/37 Co-authored-by: phoenix Co-committed-by: phoenix --- src/token.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/token.rs b/src/token.rs index fd8f6f7..badb6ec 100644 --- a/src/token.rs +++ b/src/token.rs @@ -5,10 +5,10 @@ use serde::{Deserialize, Serialize}; #[derive(Clone, Debug, Deserialize, Serialize)] pub struct Token { pub scope: String, - pub expiration: i32, + pub expiration: i64, pub audience: String, pub issuer: String, - pub issued: i32, + pub issued: i64, } #[derive(Clone, Debug, Deserialize, Serialize)] @@ -22,7 +22,7 @@ pub struct AccessToken { #[serde(alias = "token_type")] pub token_type: String, #[serde(alias = "expiration")] - pub expiration: i32, + pub expiration: i64, #[serde(alias = "message")] pub message: String, } -- 2.43.0 From 73c17840fffa50b2f701a1f001e4320b07c04d8b Mon Sep 17 00:00:00 2001 From: phoenix Date: Thu, 10 Apr 2025 22:30:01 +0000 Subject: [PATCH 2/3] Implemented functionality and wrote test for checking token scope (#39) Reviewed-on: https://git.kundeng.us/phoenix/icarus_models/pulls/39 Co-authored-by: phoenix Co-committed-by: phoenix --- src/token.rs | 29 +++++++++++++++++++++-------- 1 file changed, 21 insertions(+), 8 deletions(-) diff --git a/src/token.rs b/src/token.rs index badb6ec..8d85986 100644 --- a/src/token.rs +++ b/src/token.rs @@ -57,14 +57,27 @@ impl Token { false } - // TODO: Implement pub fn contains_scope(&self, des_scope: &String) -> bool { - let extracted_token: String = String::from("Token"); - - if extracted_token == *des_scope { - return true; - } - - false + self.scope.contains(des_scope) + } +} + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn test_token_scope_check() { + let mut token = Token::default(); + token.scope = String::from("song:read song:upload song:download"); + + let check_scope = String::from("song:download"); + let result = token.contains_scope(&check_scope); + + assert!( + result, + "Error: The scope {:?} was not found in the token's scope {:?}", + check_scope, token.scope + ); } } -- 2.43.0 From 47475639b0df26e0b016d8b086a7906bd3331588 Mon Sep 17 00:00:00 2001 From: phoenix Date: Thu, 10 Apr 2025 23:28:00 +0000 Subject: [PATCH 3/3] Version bump (#40) Reviewed-on: https://git.kundeng.us/phoenix/icarus_models/pulls/40 Co-authored-by: phoenix Co-committed-by: phoenix --- Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index 0a52d23..aca9d7f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "icarus_models" -version = "0.4.1" +version = "0.4.3" edition = "2024" rust-version = "1.86" description = "models used for the icarus project" -- 2.43.0