public async Task Commands_CanHandleCommandWithAReturnValueWithValidationFailures()
{
// Arrange
var handlerFactory = new MessageHandlerRegistry();
var mediator = new Mediator(handlerFactory.MultiInstanceFactory, handlerFactory.SingleInstanceFactory);
handlerFactory.AddHandlersForCommandOrQuery<ICommandHandler<TestCommandWithResult>>(new TestCommandWithResultHandler(mediator));
// Act
var result = await mediator.Send(new TestCommandWithResult { Id = 999 });
var returnedValue = result.Result<TestCommandResult>();
// Assert
Assert.IsTrue(returnedValue == null && result.ValidationResults.Any());
}