From 8a4184773f3cbd548e4213926c22dc342b850ab5 Mon Sep 17 00:00:00 2001 From: Denis Kasak Date: Wed, 15 May 2024 12:00:10 +0200 Subject: [PATCH] test: Add test for info string construction. --- src/ecies/mod.rs | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/src/ecies/mod.rs b/src/ecies/mod.rs index 6ebc08e0..a3ac0b3e 100644 --- a/src/ecies/mod.rs +++ b/src/ecies/mod.rs @@ -691,6 +691,37 @@ mod test { assert_eq!(digit, 55, "u8::MAX should generate 55"); } + #[test] + fn test_info_construction() { + use crate::types::Curve25519Keypair; + + let app_info = "foobar"; + let our_public_key = Curve25519Keypair::new().public_key; + let their_public_key = Curve25519Keypair::new().public_key; + + let check_code_info1 = EstablishedEcies::get_check_code_info( + app_info, + Role::Initiator, + our_public_key, + their_public_key, + ); + assert_eq!( + check_code_info1, + format!("foobar_CHECKCODE|{their_public_key}|{our_public_key}") + ); + + let check_code_info2 = EstablishedEcies::get_check_code_info( + app_info, + Role::Recipient, + our_public_key, + their_public_key, + ); + assert_eq!( + check_code_info2, + format!("foobar_CHECKCODE|{our_public_key}|{their_public_key}") + ); + } + proptest! { #[test] fn check_code_proptest(bytes in prop::array::uniform2(0u8..) ) {