public void CallsRegisteredEvent() { var eventDispatcher = new EventDomainDispatcher(); var implementationOneEventOne = Substitute.For <ImplementationOneEventOne>(); eventDispatcher.Add <EventOne, ImplementationOneEventOne>(implementationOneEventOne); eventDispatcher.Send(new EventOne()); implementationOneEventOne.Received(1).Execute(Arg.Any <EventOne>()); }
public void CallsSameInstanceRegistrations() { var eventDispatcher = new EventDomainDispatcher(); var instanceOne = Substitute.For <ImplementationOneEventOne>(); var instanceTwo = Substitute.For <ImplementationOneEventOne>(); eventDispatcher.Add <EventOne, ImplementationOneEventOne>(instanceOne); eventDispatcher.Add <EventOne, ImplementationOneEventOne>(instanceTwo); eventDispatcher.Send(new EventOne()); instanceOne.Received(1).Execute(Arg.Any <EventOne>()); instanceTwo.Received(1).Execute(Arg.Any <EventOne>()); }
public void ThrowsWhenEventsHaveNoRegistrations() { var eventDispatcher = new EventDomainDispatcher(); Assert.Throws <Exception>(() => eventDispatcher.Send(new EventOne())); }