示例#1
0
        public async Task AddAuthor_Success_ReturnsActionResultAuthorDtoWhichWasAdded()
        {
            var insertDto = new AuthorDto()
            {
                FirstName = "Max", LastName = "Novitskyi"
            };
            var expectedAuthorDto = new AuthorDto()
            {
                Id = 201, FirstName = "Max", LastName = "Novitskyi"
            };

            _authorServiceMock.Setup(s => s.Add(It.IsAny <AuthorDto>())).ReturnsAsync(expectedAuthorDto);

            var createdAtActionResult = await _authorController.PostAuthor(insertDto);

            var result = (AuthorDto)((CreatedAtActionResult)createdAtActionResult.Result).Value;

            result.Should().BeOfType <AuthorDto>();
            createdAtActionResult.Should().BeOfType <ActionResult <AuthorDto> >();
            insertDto.Should().BeEquivalentTo(result, options => options.Excluding(a => a.Id));
        }