From f1b3fcc40ab666d8def97096d1942c274da9b279 Mon Sep 17 00:00:00 2001 From: DanConwayDev Date: Tue, 11 Jun 2024 16:21:44 +0100 Subject: chore: bump rust-nostr to v0.32.0 both nostr and nostr-sdk packages and also in test_utils fix the many breaking changes fix: ignore trailing slash when depuplicate relays for send events. this was picked up as TagStandard::RelayMetadata has started adding a traling slash. refactor cli output test function `expect_send_with_progress` so that relays can succeed / fail in a random order --- test_utils/src/relay.rs | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) (limited to 'test_utils/src/relay.rs') diff --git a/test_utils/src/relay.rs b/test_utils/src/relay.rs index e47ab5d..82a8f8d 100644 --- a/test_utils/src/relay.rs +++ b/test_utils/src/relay.rs @@ -255,21 +255,27 @@ pub fn expect_send_with_progress( " - {} -------------------- 0/{event_count}", &relays[0].0 ))?; - for relay in &relays { - // if successful - if relay.1 { - p.expect_eventually(format!(" y {}", relay.0))?; - } else { - p.expect_eventually(format!(" x {} {}", relay.0, relay.2))?; + let last_relay_outcome = outcome_message(relays.last().unwrap()); + let mut s = String::new(); + loop { + s.push_str(&p.expect_eventually(&last_relay_outcome)?); + s.push_str(&last_relay_outcome); + if relays.iter().all(|r| s.contains(&outcome_message(r))) { + // all responses have been received with correct outcome + break; } - // could check that before only contains titles: - // - # y x n/n and whitespace - // let before = p.expect_eventually(format!(" รข {title}"))?; - // assert_eq!("", before.trim()); } Ok(()) } +fn outcome_message(relay: &(&str, bool, &str)) -> String { + if relay.1 { + format!(" y {}", relay.0) + } else { + format!(" x {} {}", relay.0, relay.2) + } +} + pub fn expect_send_with_progress_exact_interaction( p: &mut CliTester, titles: Vec<&str>, -- cgit v1.2.3