public void CreateTomeTest() { var newTome = new TomeDTO { Book = _bookDTOs[2], BookId = _bookDTOs[2].Id, BookTitle = _bookDTOs[2].Title }; var controller = new TomesController(_entityMock.Object); var result = controller.PostTome(newTome); var objectResult = Assert.IsType <CreatedAtActionResult>(result); var model = Assert.IsAssignableFrom <TomeDTO>(objectResult.Value); Assert.Equal(_tomeDTOs.Count + 1, _entityMock.Object.Tomes.Count()); Assert.Equal(newTome, model); }
public IActionResult PostTome([FromBody] TomeDTO tomeDTO) { Tome tome = new Tome { BookId = tomeDTO.Book.Id }; _context.Tomes.Add(tome); _context.SaveChanges(); try { return(CreatedAtAction(nameof(GetTome), new { id = tome.Id }, tomeDTO)); } catch { return(StatusCode(StatusCodes.Status500InternalServerError)); } }