diff options
Diffstat (limited to 'src/channel/handlers/create/test.rs')
| -rw-r--r-- | src/channel/handlers/create/test.rs | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/src/channel/handlers/create/test.rs b/src/channel/handlers/create/test.rs index 3c770cf..31bb778 100644 --- a/src/channel/handlers/create/test.rs +++ b/src/channel/handlers/create/test.rs @@ -2,6 +2,7 @@ use std::future; use axum::extract::{Json, State}; use futures::stream::StreamExt as _; +use itertools::Itertools; use crate::{ channel::app, @@ -33,7 +34,14 @@ async fn new_channel() { // Verify the semantics let snapshot = app.boot().snapshot().await.expect("boot always succeeds"); - assert!(snapshot.channels.iter().any(|channel| channel == &response)); + let created = snapshot + .events + .into_iter() + .filter_map(fixtures::event::channel) + .filter_map(fixtures::event::channel::created) + .exactly_one() + .expect("only one channel has been created"); + assert_eq!(response, created.channel); let channel = app .channels() @@ -47,8 +55,8 @@ async fn new_channel() { .subscribe(resume_point) .await .expect("subscribing never fails") - .filter_map(fixtures::event::channel) - .filter_map(fixtures::event::channel::created) + .filter_map(fixtures::event::stream::channel) + .filter_map(fixtures::event::stream::channel::created) .filter(|event| future::ready(event.channel == response)); let event = events.next().expect_some("creation event published").await; |
