diff --git a/src/lib.rs b/src/lib.rs index 5176c1b..1391fdc 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -251,6 +251,13 @@ mod tests { assert!(token_data.header.kid.is_none()); } + #[test] + fn decode_token() { + let token = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJiQGIuY29tIiwiY29tcGFueSI6IkFDTUUifQ.I1BvFoHe94AFf09O6tDbcSB8-jp8w6xZqmyHIwPeSdY"; + let claims = decode::(token, "secret".as_ref(), Algorithm::HS256); + claims.unwrap(); + } + #[test] #[should_panic(expected = "InvalidToken")] fn decode_token_missing_parts() { @@ -267,6 +274,14 @@ mod tests { claims.unwrap(); } + #[test] + #[should_panic(expected = "WrongAlgorithmHeader")] + fn decode_token_wrong_algorithm() { + let token = "eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJiQGIuY29tIiwiY29tcGFueSI6IkFDTUUifQ.pKscJVk7-aHxfmQKlaZxh5uhuKhGMAa-1F5IX5mfUwI"; + let claims = decode::(token, "secret".as_ref(), Algorithm::HS256); + claims.unwrap(); + } + #[test] fn decode_token_with_bytes_secret() { let token = "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwiY29tcGFueSI6Ikdvb2dvbCJ9.27QxgG96vpX4akKNpD1YdRGHE3_u2X35wR3EHA2eCrs";