Example #1
0
        public async Task CreateAnswer_ReturnsNewAnswer()
        {
            //Arrange
            var answerForCreation = AutoFaker.Generate <AnswerForCreationDto>();
            var answer            = AutoFaker.Generate <Answer>();
            var answerDto         = AutoFaker.Generate <AnswerDto>();

            _answerService.Setup(x => x.Create(It.IsAny <Answer>(), It.IsAny <int>()))
            .ReturnsAsync(answer);
            _mapper.Setup(x => x.Map <Answer>(answerForCreation))
            .Returns(answer);
            _mapper.Setup(x => x.Map <AnswerDto>(answer))
            .Returns(answerDto);

            //Action
            var result = await _sut.CreateAnswer(answerForCreation);

            //Assert
            result.Should().BeOfType <OkObjectResult>();
            ((OkObjectResult)result).StatusCode.Should().Be(StatusCodes.Status200OK);
            ((OkObjectResult)result).Value.Should().BeEquivalentTo(answerDto);
        }