Skip to content

Commit

Permalink
more tests
Browse files Browse the repository at this point in the history
  • Loading branch information
Geal committed Feb 8, 2025
1 parent 7721bdd commit 0fb9fd6
Showing 1 changed file with 57 additions and 0 deletions.
57 changes: 57 additions & 0 deletions biscuit-auth/src/crypto/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -848,4 +848,61 @@ mod tests {
let deser_pub = PublicKey::from_public_key_der(&der_pub, Algorithm::Ed25519).unwrap();
assert_eq!(ed25519_pub, deser_pub);
}

#[cfg(feature = "pem")]
#[test]
fn ed25519_pem() {
let ed25519_kp = KeyPair::new_with_algorithm(Algorithm::Ed25519);
let pem_kp = ed25519_kp.to_private_key_pem().unwrap();
let deser = KeyPair::from_private_key_pem(&pem_kp, Algorithm::Ed25519).unwrap();
assert_eq!(ed25519_kp, deser);

let ed25519_priv = ed25519_kp.private();
let pem_priv = ed25519_priv.to_private_key_pem().unwrap();
let deser_priv = PrivateKey::from_private_key_pem(&pem_priv, Algorithm::Ed25519).unwrap();
assert_eq!(ed25519_priv, deser_priv);

let ed25519_pub = ed25519_kp.public();
let pem_pub = ed25519_pub.to_public_key_pem().unwrap();
let deser_pub = PublicKey::from_public_key_pem(&pem_pub, Algorithm::Ed25519).unwrap();
assert_eq!(ed25519_pub, deser_pub);
}

#[cfg(feature = "pem")]
#[test]
fn p256_der() {
let p256_kp = KeyPair::new_with_algorithm(Algorithm::Secp256r1);
let der_kp = p256_kp.to_private_key_der().unwrap();
let deser = KeyPair::from_private_key_der(&der_kp, Algorithm::Secp256r1).unwrap();
assert_eq!(p256_kp, deser);

let p256_priv = p256_kp.private();
let der_priv = p256_priv.to_private_key_der().unwrap();
let deser_priv = PrivateKey::from_private_key_der(&der_priv, Algorithm::Secp256r1).unwrap();
assert_eq!(p256_priv, deser_priv);

let p256_pub = p256_kp.public();
let der_pub = p256_pub.to_public_key_der().unwrap();
let deser_pub = PublicKey::from_public_key_der(&der_pub, Algorithm::Secp256r1).unwrap();
assert_eq!(p256_pub, deser_pub);
}

#[cfg(feature = "pem")]
#[test]
fn p256_pem() {
let p256_kp = KeyPair::new_with_algorithm(Algorithm::Secp256r1);
let pem_kp = p256_kp.to_private_key_pem().unwrap();
let deser = KeyPair::from_private_key_pem(&pem_kp, Algorithm::Secp256r1).unwrap();
assert_eq!(p256_kp, deser);

let p256_priv = p256_kp.private();
let pem_priv = p256_priv.to_private_key_pem().unwrap();
let deser_priv = PrivateKey::from_private_key_pem(&pem_priv, Algorithm::Secp256r1).unwrap();
assert_eq!(p256_priv, deser_priv);

let p256_pub = p256_kp.public();
let pem_pub = p256_pub.to_public_key_pem().unwrap();
let deser_pub = PublicKey::from_public_key_pem(&pem_pub, Algorithm::Secp256r1).unwrap();
assert_eq!(p256_pub, deser_pub);
}
}

0 comments on commit 0fb9fd6

Please sign in to comment.