v0.3.12-pre.004
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
// file: crates/ksp-raw-transaction-lib/unit_tests/signature.rs
|
||||
// version: 3
|
||||
// version: 4
|
||||
|
||||
use base64::Engine; // rust-rules: trait-import
|
||||
|
||||
@@ -79,3 +79,19 @@ fn pre_006_embedded_signature_extracts_terminal_v1_signature_and_rejects_trailin
|
||||
assert!(crate::extract_raw_transaction_signature_from_binary_base64(trailing.as_str()).is_err());
|
||||
}
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn pre_004_base58_formatter_round_trips_canonical_signatures() {
|
||||
for bytes in [[0_u8; 64], [1_u8; 64], [0xAB_u8; 64]] {
|
||||
let signature = ksp_store_api::RawTransactionSignature::new(bytes);
|
||||
let text = crate::format_raw_transaction_signature(&signature);
|
||||
assert!((crate::MIN_RAW_TRANSACTION_SIGNATURE_TEXT_BYTES..=crate::MAX_RAW_TRANSACTION_SIGNATURE_TEXT_BYTES).contains(&text.len()));
|
||||
let parsed = crate::parse_raw_transaction_signature(text.as_str());
|
||||
assert!(parsed.is_ok());
|
||||
if let std::result::Result::Ok(parsed) = parsed {
|
||||
assert_eq!(parsed, signature);
|
||||
}
|
||||
}
|
||||
assert_eq!(crate::format_raw_transaction_signature(&ksp_store_api::RawTransactionSignature::new([0_u8; 64])), "1".repeat(64));
|
||||
return;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user