From 000901c0cbca8464b5a89bcc93c5474f6564bafd Mon Sep 17 00:00:00 2001 From: DanConwayDev Date: Sun, 1 Oct 2023 00:00:00 +0100 Subject: feat(prs-create) send to multiple relays add tests but these currently don't work when run together --- test_utils/src/lib.rs | 39 +++++++++++++++++++++++++++++++++++++-- 1 file changed, 37 insertions(+), 2 deletions(-) (limited to 'test_utils/src/lib.rs') diff --git a/test_utils/src/lib.rs b/test_utils/src/lib.rs index 0f870f6..a9d818c 100644 --- a/test_utils/src/lib.rs +++ b/test_utils/src/lib.rs @@ -9,6 +9,7 @@ use rexpect::session::{Options, PtySession}; use strip_ansi_escapes::strip_str; pub mod git; +pub mod relay; pub static TEST_KEY_1_NSEC: &str = "nsec1ppsg5sm2aexq06juxmu9evtutr6jkwkhp98exxxvwamhru9lyx9s3rwseq"; @@ -353,7 +354,12 @@ impl CliTester { } /// returns what came before expected message - pub fn expect_eventually(&mut self, message: &str) -> Result { + pub fn expect_eventually(&mut self, message: S) -> Result + where + S: Into, + { + let message_string = message.into(); + let message = message_string.as_str(); let before = self .rexpect_session .exp_string(message) @@ -361,8 +367,27 @@ impl CliTester { Ok(before) } - pub fn expect(&mut self, message: &str) -> Result<&mut Self> { + pub fn expect_after_whitespace(&mut self, message: S) -> Result<&mut Self> + where + S: Into, + { + assert_eq!("", self.expect_eventually(message)?.trim()); + Ok(self) + } + + pub fn expect(&mut self, message: S) -> Result<&mut Self> + where + S: Into, + { + let message_string = message.into(); + let message = message_string.as_str(); let before = self.expect_eventually(message)?; + if !before.is_empty() { + std::fs::write("aaaaaaaaaaaa.txt", before.clone())?; + + // let mut output = std::fs::File::create("aaaaaaaaaaa.txt")?; + // write!(output, "{}", *before); + } ensure!( before.is_empty(), format!( @@ -397,6 +422,16 @@ impl CliTester { assert_eq!(before, message); Ok(()) } + + pub fn expect_end_with_whitespace(&mut self) -> Result<()> { + let before = self + .rexpect_session + .exp_eof() + .context("expected immediate end but got timed out")?; + assert_eq!(before.trim(), ""); + Ok(()) + } + pub fn expect_end_eventually(&mut self) -> Result { self.rexpect_session .exp_eof() -- cgit v1.2.3