v0.2.5-pre.003

This commit is contained in:
2026-08-19 10:52:21 +02:00
parent bcda6db11f
commit c6794af05b
20 changed files with 2721 additions and 37 deletions

View File

@@ -1,5 +1,5 @@
// file: crates/ksp-wallet-lib/tests/public_api.rs
// version: 1
// version: 2
//! Public API canaries for the Wallet foundation.
@@ -59,3 +59,20 @@ fn wallet_error_codes_are_available_from_crate_root() {
assert_eq!(code.domain(), "wallet");
}
}
#[test]
fn strict_v1_envelope_and_transcript_are_available_from_crate_root() -> ksp_core_lib::Result<()> {
let source = include_bytes!("fixtures/kspwallet_v1_wire_only.json");
let envelope = match ksp_wallet_lib::KspWalletEnvelopeV1::parse_json(source) {
std::result::Result::Ok(envelope) => envelope,
std::result::Result::Err(error) => return std::result::Result::Err(error),
};
assert_eq!(envelope.format_version(), ksp_wallet_lib::KSPWALLET_FORMAT_VERSION_V1);
assert_eq!(envelope.owner_slot().role(), ksp_wallet_lib::WalletKeySlotRoleV1::Owner);
assert!(envelope.view_descriptor().enabled());
assert!(!envelope.state_transcript().is_empty());
assert!(!envelope.owner_slot_aad().is_empty());
assert!(envelope.view_slot_aad().is_some());
assert!(!envelope.compartment_aad(ksp_wallet_lib::WalletCompartmentKindV1::Metadata).is_empty());
return std::result::Result::Ok(());
}