From b035d4f0e755714fbec002c1bddd05e1be80fcdb Mon Sep 17 00:00:00 2001 From: dev Date: Wed, 30 Sep 2026 16:33:07 +0800 Subject: [PATCH] fix: ignore library keepalive pings when asserting mock wire traffic The irc crate sends one PING (a bare local timestamp) immediately after the MOTD because its ping interval's first tick fires right away. Under load the worker's write is delayed into the wire() capture window, so strict equality assertions on captured lines intermittently saw the keepalive and failed on CI windows runners. Filter payload-numeric PINGs in the fixture; the wire-barrier sentinel is unaffected. --- tests/dynamic_channels.rs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/tests/dynamic_channels.rs b/tests/dynamic_channels.rs index cb1e258..dc57a06 100644 --- a/tests/dynamic_channels.rs +++ b/tests/dynamic_channels.rs @@ -161,6 +161,12 @@ impl MockSession { if line.starts_with("PING ") && line.contains("wire-barrier") { return lines; } + // The irc crate pings once right after the MOTD (its interval's + // first tick is immediate), and heavy CI runners delay that write + // into this capture window; keepalive payloads are bare timestamps. + if line.starts_with("PING ") && line[5..].bytes().all(|b| b.is_ascii_digit()) { + continue; + } lines.push(line); } }