in src/legacy.rs [128:148]
fn test_e2e() {
let (local_key, remote_key) = crate::generate_keys().unwrap();
let plaintext = b"There was a green mouse, running in the grass";
let mut auth_secret = vec![0u8; 16];
let cryptographer = crate::crypto::holder::get_cryptographer();
cryptographer.random_bytes(&mut auth_secret).unwrap();
let remote_public = cryptographer
.import_public_key(&remote_key.pub_as_raw().unwrap())
.unwrap();
let params = WebPushParams::default();
let encrypted_block = aesgcm::encrypt(
&*local_key,
&*remote_public,
&auth_secret,
plaintext,
params,
)
.unwrap();
let decrypted = aesgcm::decrypt(&*remote_key, &auth_secret, &encrypted_block).unwrap();
assert_eq!(decrypted, plaintext.to_vec());
}