public void DomainEventHandlerResolver_GetDomainEventHandlers_TransactionHasBeenCompletedEvent_EventHandlersReturned() { String handlerTypeName = "VoucherManagement.BusinessLogic.EventHandling.VoucherDomainEventHandler, VoucherManagement.BusinessLogic"; Dictionary <String, String[]> eventHandlerConfiguration = new Dictionary <String, String[]>(); VoucherIssuedEvent voucherIssuedEvent = TestData.VoucherIssuedEvent; eventHandlerConfiguration.Add(voucherIssuedEvent.GetType().Name, new String[] { handlerTypeName }); Mock <IDomainEventHandler> domainEventHandler = new Mock <IDomainEventHandler>(); Func <Type, IDomainEventHandler> createDomainEventHandlerFunc = (type) => { return(domainEventHandler.Object); }; DomainEventHandlerResolver resolver = new DomainEventHandlerResolver(eventHandlerConfiguration, createDomainEventHandlerFunc); List <IDomainEventHandler> handlers = resolver.GetDomainEventHandlers(voucherIssuedEvent); handlers.ShouldNotBeNull(); handlers.Any().ShouldBeTrue(); handlers.Count.ShouldBe(1); }