public async Task EventGrid_ShouldCallAllValidHandlers_WhenMoreThanOneHandleMatches() { // Arrange EventGridEvent testEvent = new EventGridEvent(); List <EventGridEvent> events = new List <EventGridEvent> { testEvent }; var handler1 = Mock.Of <IEventGridHandler>(); var handler2 = Mock.Of <IEventGridHandler>(); _eventGridDispatcher = new EventGridDispatcher(_logger, new List <IEventGridHandler> { handler1, handler2 }); // Arrange Mocks Mock.Get(handler1) .Setup(x => x.HandlesEvent(It.IsAny <string>(), It.IsAny <string>())) .Returns(true); Mock.Get(handler2) .Setup(x => x.HandlesEvent(It.IsAny <string>(), It.IsAny <string>())) .Returns(true); // Act var result = await _eventGridDispatcher.DispatchEventGridEvents(events).ConfigureAwait(true); // Assert result.ShouldBeEquivalentTo(new OkResult()); Mock.Get(handler1).Verify(x => x.HandleAsync(It.IsAny <EventGridEvent>()), Times.Once); Mock.Get(handler2).Verify(x => x.HandleAsync(It.IsAny <EventGridEvent>()), Times.Once); }
public EventGridDispatcherTests() { _logger = Mock.Of <IObjectLogger <EventGridDispatcher> >(); _eventGridHandler = Mock.Of <IEventGridHandler>(); _eventGridDispatcher = new EventGridDispatcher(_logger, new List <IEventGridHandler> { _eventGridHandler }); }