public void ShouldThrowExcpetion_WhenNoQueryHandler() { MockedLocator.Setup(method => method.GetAllServices<IQueryHandler<Query, ReadModel>>()).Returns(() => new IQueryHandler<Query, ReadModel>[] { }); var dispatcher = (IQueryDispatcher)new QueryDispatcher(MockedLocator.Object); var action = new Action(() => dispatcher.Dispatch<Query, ReadModel>(new Query())); action.ShouldThrowExactly<NoHandlerException>().WithMessage(NoHandlerExceptionMessageExpected); }
public void ShouldThrowExcpetion_WhenMultipleCommandHandler() { MockedLocator.Setup(method => method.GetAllServices<ICommandHandler<Command, Result>>()).Returns(() => new [] { MockedCommandHandler.Object, MockedCommandHandler.Object }); var dispatcher = (ICommandDispatcher)new CommandDispatcher(MockedLocator.Object); var action = new Action(() => dispatcher.Dispatch<Command, Result>(new Command())); action.ShouldThrowExactly<MultipleHandlerException>().WithMessage(MultipleHandlerExceptionMessageExpected); }
public void ShouldThrowExcpetion_WhenNoCommandHandlerWithoutReturn() { MockedLocator.Setup(method => method.GetAllServices<ICommandHandler<Command>>()).Returns(() => new ICommandHandler<Command>[] { }); var dispatcher = (ICommandDispatcher)new CommandDispatcher(MockedLocator.Object); var action = new Action(() => dispatcher.Dispatch(new Command())); action.ShouldThrowExactly<NoHandlerException>().WithMessage(NoHandlerExceptionMessageExpected); }