0.3.15-pre.014
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
// file: crates/ksp-store-postgres-lib/unit_tests/raw_transaction.rs
|
||||
// version: 7
|
||||
// version: 8
|
||||
|
||||
fn network() -> ksp_store_api::RawNetworkId {
|
||||
return match ksp_store_api::RawNetworkId::new("devnet") {
|
||||
@@ -429,6 +429,52 @@ fn v0_3_15_pre_012_fix_004_content_conflict_diagnostic_collapses_unknown_meta_ke
|
||||
return;
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn v0_3_15_pre_014_log_messages_conflict_diagnostic_distinguishes_prefix_truncation_and_line_kind_without_text() {
|
||||
let stored = raw_transaction(
|
||||
9,
|
||||
br#"{"transaction":["AQID","base64"],"meta":{"logMessages":["Program Vote111 invoke [1]","Program log: stable","Program Vote111 success"]},"version":0}"#,
|
||||
7,
|
||||
);
|
||||
let incoming = raw_transaction(
|
||||
9,
|
||||
br#"{"transaction":["AQID","base64"],"meta":{"logMessages":["Program Vote111 invoke [1]","Program log: stable","Log truncated"]},"version":0}"#,
|
||||
8,
|
||||
);
|
||||
let diagnostic = super::raw_transaction_content_conflict_diagnostic(&stored, &incoming);
|
||||
assert!(diagnostic.log_messages.available);
|
||||
assert_eq!(diagnostic.log_messages.stored_state, "array");
|
||||
assert_eq!(diagnostic.log_messages.incoming_state, "array");
|
||||
assert_eq!(diagnostic.log_messages.stored_count, 3);
|
||||
assert_eq!(diagnostic.log_messages.incoming_count, 3);
|
||||
assert_eq!(diagnostic.log_messages.first_mismatch_index, "2");
|
||||
assert_eq!(diagnostic.log_messages.stored_first_kind, "program_success");
|
||||
assert_eq!(diagnostic.log_messages.incoming_first_kind, "log_truncated");
|
||||
assert!(!diagnostic.log_messages.stored_has_truncation_marker);
|
||||
assert!(diagnostic.log_messages.incoming_has_truncation_marker);
|
||||
assert!(!diagnostic.log_messages.stored_prefix_of_incoming);
|
||||
assert!(!diagnostic.log_messages.incoming_prefix_of_stored);
|
||||
return;
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn v0_3_15_pre_014_log_messages_conflict_diagnostic_detects_strict_prefix_without_exposing_line_material() {
|
||||
let stored = raw_transaction(
|
||||
9,
|
||||
br#"{"transaction":["AQID","base64"],"meta":{"logMessages":["Program Vote111 invoke [1]","Program Vote111 success"]},"version":0}"#,
|
||||
7,
|
||||
);
|
||||
let incoming = raw_transaction(9, br#"{"transaction":["AQID","base64"],"meta":{"logMessages":["Program Vote111 invoke [1]"]},"version":0}"#, 8);
|
||||
let diagnostic = super::raw_transaction_content_conflict_diagnostic(&stored, &incoming);
|
||||
assert!(diagnostic.log_messages.available);
|
||||
assert_eq!(diagnostic.log_messages.first_mismatch_index, "1");
|
||||
assert_eq!(diagnostic.log_messages.stored_first_kind, "program_success");
|
||||
assert_eq!(diagnostic.log_messages.incoming_first_kind, "missing");
|
||||
assert!(!diagnostic.log_messages.stored_prefix_of_incoming);
|
||||
assert!(diagnostic.log_messages.incoming_prefix_of_stored);
|
||||
return;
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn pre_005_observation_idempotence_compares_reference_and_complete_provenance() {
|
||||
let incoming_transaction = raw_transaction(8, &[1, 2, 3], 4);
|
||||
|
||||
Reference in New Issue
Block a user