diff options
Diffstat (limited to 'src/components/testutil.rs')
-rw-r--r-- | src/components/testutil.rs | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/components/testutil.rs b/src/components/testutil.rs new file mode 100644 index 0000000..4545774 --- /dev/null +++ b/src/components/testutil.rs @@ -0,0 +1,19 @@ +use input::{testutil::with_event_handler, Event, EventHandler}; +use view::{testutil::with_view_sender, ViewSender}; + +pub struct TestContext { + pub event_handler: EventHandler, + pub view_sender: ViewSender, +} + +pub fn handle_event_test<C>(events: &[Event], callback: C) +where C: FnOnce(TestContext) { + with_view_sender(|view_sender_context| { + with_event_handler(events, |event_handler_context| { + callback(TestContext { + event_handler: event_handler_context.event_handler, + view_sender: view_sender_context.sender, + }); + }); + }); +} |