Exemplo n.º 1
0
        public async Task CreateReturnsCreatedAtActionWhenSuccessAnswerAsync()
        {
            // Arrange
            var query = new ApiProjectCreateCommand()
            {
                Title = "Test Project"
            };
            var newId    = "0000000000000000";
            var mediator = new Mock <IMediator>();

            mediator.Setup(x => x.Send(It.IsAny <ProjectCreateCommand>(),
                                       It.IsAny <CancellationToken>()))
            .ReturnsAsync(
                new CreateResult(newId))
            .Verifiable("Query was not sent.");
            var controller = BuildController(mediator);

            // Act
            var answer = await controller.Create(query);

            // Assert
            Assert.IsType <CreatedAtActionResult>(answer);
            Assert.Equal(newId, ((CreatedAtActionResult)answer).Value);
            mediator.Verify(x => x.Send(It.IsAny <ProjectCreateCommand>(),
                                        It.IsAny <CancellationToken>()));
        }
Exemplo n.º 2
0
        public async Task CreateReturnsBadResultWhenNotSuccessAnswerAsync()
        {
            // Arrange
            var query = new ApiProjectCreateCommand()
            {
                Title = "Test Project"
            };
            var mediator = new Mock <IMediator>();

            mediator.Setup(x => x.Send(It.IsAny <ProjectCreateCommand>(),
                                       It.IsAny <CancellationToken>()))
            .ReturnsAsync(
                new CreateResult(new string[] { "Error" }))
            .Verifiable("Query was not sent.");
            var controller = BuildController(mediator);

            // Act
            var answer = await controller.Create(query);

            // Assert
            Assert.IsType <BadRequestResult>(answer);
            mediator.Verify(x => x.Send(It.IsAny <ProjectCreateCommand>(),
                                        It.IsAny <CancellationToken>()));
        }