event_scanner/test_utils/
macros.rs

1#[macro_export]
2macro_rules! assert_next {
3    ($stream: expr, $expected: expr) => {
4        let message = tokio_stream::StreamExt::next(&mut $stream).await;
5        if let Some(msg) = message {
6            assert_eq!(msg, $expected)
7        } else {
8            panic!("Expected {:?}, got: {message:?}", $expected)
9        }
10    };
11}
12
13#[macro_export]
14macro_rules! assert_closed {
15    ($stream: expr) => {
16        let message = tokio_stream::StreamExt::next(&mut $stream).await;
17        assert!(message.is_none())
18    };
19}
20
21#[macro_export]
22macro_rules! assert_empty {
23    ($stream: expr) => {{
24        let inner = $stream.into_inner();
25        assert!(inner.is_empty(), "Stream should have no pending messages");
26        tokio_stream::wrappers::ReceiverStream::new(inner)
27    }};
28}