Add new test to validate TOTP codes generation
This commit is contained in:
parent
834ba1987e
commit
10982190e7
@ -94,4 +94,23 @@ impl TotpKey {
|
||||
pub fn check_code(&self, code: &str) -> Res<bool> {
|
||||
Ok(self.current_code()?.eq(code) || self.previous_code()?.eq(code))
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
mod test {
|
||||
use crate::data::totp_key::TotpKey;
|
||||
|
||||
#[test]
|
||||
fn test_timing() {
|
||||
let key = TotpKey::new_random();
|
||||
let code = key.current_code().unwrap();
|
||||
let old_code = key.previous_code().unwrap();
|
||||
assert_ne!(code, old_code);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_generation() {
|
||||
let key = TotpKey::from_encoded_secret("JBSWY3DPEHPK3PXP");
|
||||
assert_eq!("124851", key.get_code_at(|| 1650470683).unwrap());
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user