public void Test_PublishEvent_Invokes_Event_Handlers_Subscribed_For_The_Events_Type_Using_SubscribeAll() { //Given var @event = new TestEventA(); var mockTestEventHandler = new Mock <IEventHandler <TestEventA> >(); eventAggregator.SubscribeAll(mockTestEventHandler.Object); //When eventAggregator.PublishEvent(@event); //Then mockTestEventHandler.Verify(x => x.Handle(@event), Times.Once); }
public void Test_PublishEvent_Does_Not_Invoke_EventHandler_After_Unsubscribing_For_All_Event_Types() { //Given var @event = new TestEventA(); var mockTestEventHandler = new Mock <IEventHandler <TestEventA> >(); eventAggregator.Subscribe(mockTestEventHandler.Object); //When eventAggregator.PublishEvent(@event); eventAggregator.UnsubscribeAll(mockTestEventHandler.Object); eventAggregator.PublishEvent(@event); //Then mockTestEventHandler.Verify(x => x.Handle(@event), Times.Once); }
public void Test_PublishEvent_Invokes_Event_Handlers_Subscribed_For_The_Events_Inherited_Types() { //Given var @event = new TestEventA(); var mockBaseEventHandler = new Mock <IEventHandler <TestEventBase> >(); var mockIEventHandler = new Mock <IEventHandler <IEvent> >(); eventAggregator.Subscribe(mockBaseEventHandler.Object); eventAggregator.Subscribe(mockIEventHandler.Object); //When eventAggregator.PublishEvent(@event); //Then mockBaseEventHandler.Verify(x => x.Handle(@event), Times.Once); mockIEventHandler.Verify(x => x.Handle(@event), Times.Once); }
public void RiseTestEventA(object sender, EventArgs eventArgs) { TestEventA?.Invoke(sender, eventArgs); }