public static void SubscribeToEvent <TEvent>(this INybusConfigurator configurator, EventReceivedAsync <TEvent> eventReceived) where TEvent : class, IEvent { var handler = new DelegateWrapperEventHandler <TEvent>(eventReceived); SubscribeToEvent <TEvent, DelegateWrapperEventHandler <TEvent> >(configurator, handler); }
public void Handler_errors_are_not_caught(IDispatcher dispatcher, IEventContext <FirstTestEvent> context, Exception error, EventReceivedAsync <FirstTestEvent> handler) { Mock.Get(handler).Setup(p => p(It.IsAny <IDispatcher>(), It.IsAny <IEventContext <FirstTestEvent> >())).Throws(error); var sut = new DelegateWrapperEventHandler <FirstTestEvent>(handler); Assert.ThrowsAsync(error.GetType(), () => sut.HandleAsync(dispatcher, context)); }
public async Task Handler_is_executed(IDispatcher dispatcher, IEventContext <FirstTestEvent> context, EventReceivedAsync <FirstTestEvent> handler) { var sut = new DelegateWrapperEventHandler <FirstTestEvent>(handler); await sut.HandleAsync(dispatcher, context); Mock.Get(handler).Verify(p => p(dispatcher, context), Times.Once); }