AsyncMediator.Test.MediatorTests.Commands_CanHandleCommandThatFiresOtherCommandsWithAReturnValue C# (CSharp) Method

Commands_CanHandleCommandThatFiresOtherCommandsWithAReturnValue() private method

private Commands_CanHandleCommandThatFiresOtherCommandsWithAReturnValue ( ) : System.Threading.Tasks.Task
return System.Threading.Tasks.Task
        public async Task Commands_CanHandleCommandThatFiresOtherCommandsWithAReturnValue()
        {
            // Arrange
            var handlerFactory = new MessageHandlerRegistry();
            var mediator = new Mediator(handlerFactory.MultiInstanceFactory, handlerFactory.SingleInstanceFactory);
            handlerFactory.AddHandlersForCommandOrQuery<ICommandHandler<TestCommandWithResult>>(new TestCommandWithResultHandler(mediator));
            handlerFactory.AddHandlersForCommandOrQuery<ICommandHandler<TestMultipleCommandWithResult>>(new TestMultipleCommandHandlerWithResult(mediator));
           
            // Act
           var result = await mediator.Send(new TestMultipleCommandWithResult { Name = "bar" });

            // Assert
            Assert.IsTrue(result.Result<TestCommandResult>().ResultingValue == 5);
        }