v0.3.5-pre.003
This commit is contained in:
28
crates/ksp-interface-lib/unit_tests/transaction_execution.rs
Normal file
28
crates/ksp-interface-lib/unit_tests/transaction_execution.rs
Normal file
@@ -0,0 +1,28 @@
|
||||
// file: crates/ksp-interface-lib/unit_tests/transaction_execution.rs
|
||||
// version: 1
|
||||
|
||||
#[test]
|
||||
fn transaction_signature_preserves_exact_bytes_and_redacts_debug() {
|
||||
let signature = crate::TransactionSignature::new([0xA5_u8; 64]);
|
||||
assert_eq!(signature.as_bytes(), &[0xA5_u8; 64]);
|
||||
assert_eq!(std::format!("{signature:?}"), "TransactionSignature(..)");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn transaction_execution_outcomes_are_distinct_and_copy() {
|
||||
let succeeded = crate::TransactionExecutionOutcome::Succeeded;
|
||||
let failed = crate::TransactionExecutionOutcome::Failed;
|
||||
assert_ne!(succeeded, failed);
|
||||
let copied = succeeded;
|
||||
assert_eq!(copied, crate::TransactionExecutionOutcome::Succeeded);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn transaction_execution_event_preserves_full_slot_signature_and_outcome() {
|
||||
let signature = crate::TransactionSignature::new([0xB6_u8; 64]);
|
||||
let event = crate::TransactionExecutionEvent::new(u64::MAX, signature, crate::TransactionExecutionOutcome::Failed);
|
||||
assert_eq!(event.slot(), u64::MAX);
|
||||
assert_eq!(event.signature(), signature);
|
||||
assert_eq!(event.outcome(), crate::TransactionExecutionOutcome::Failed);
|
||||
assert_eq!(std::format!("{event:?}"), "TransactionExecutionEvent { slot: 18446744073709551615, signature: \"<omitted>\", outcome: Failed }");
|
||||
}
|
||||
Reference in New Issue
Block a user