public async Task PostBookAsync_Success_ReturnsCreatedAtActionResult() { var testBook = new BookGetDto() { Id = 1 }; _bookService.Setup(m => m.AddAsync(It.IsAny <BookPostDto>())).ReturnsAsync(testBook); var createdAtActionResult = await _booksController.PostBookAsync(It.IsAny <BookPostDto>()); var result = (BookGetDto)((CreatedAtActionResult)createdAtActionResult.Result).Value; result.Should().BeOfType <BookGetDto>(); createdAtActionResult.Result.Should().BeOfType <CreatedAtActionResult>(); result.Should().BeEquivalentTo(testBook, options => options.Excluding(a => a.Id)); }
public async Task GetBookAsync_BookExists_Returns_OkObjectResultWithRequestedId() { var testBook = new BookGetDto() { Id = 1 }; _bookService.Setup(s => s.GetByIdAsync(It.IsAny <int>())).ReturnsAsync(testBook); var getBookResult = await _booksController.GetBook(It.IsAny <int>()); var okResult = getBookResult.Result as OkObjectResult; okResult.Should().BeOfType <OkObjectResult>(); var resultBook = okResult.Value as BookGetDto; resultBook.Id.Should().Be(testBook.Id); }