public void Add_ValidObjectPassed_ReturnsOk() { // Arrange var item = new DishRequest() { Description = "Bife a Bolonhesa", Price = 10.5, RestaurantId = 1, }; // Act var okResult = _controller.Save(item) as ObjectResult; // Assert Assert.IsType <DishResponse>(okResult.Value); }
public void Save_ReturnsViewWithModelStateError_WhenSaveDishWithoutName([Frozen] IMealService mealService, [Frozen] Dish dish) { //Arrange dish.Name = ""; var mealMock = Mock.Get(mealService); var dishController = new DishController(mealMock.Object); dishController.ModelState.AddModelError("Name", "Required"); //Act var sut = dishController.Save(dish); //Assert sut.Should().BeAssignableTo <IActionResult>().And.BeOfType <ViewResult>() .Which.ViewData.ModelState["Name"].Errors.Should().HaveCount(1); }
public void Save_ReturnsToIndexWithDish_WhenSaveExistingDish([Frozen] IMealService mealService, [Frozen] Dish dish) { //Arrange var mealMock = Mock.Get(mealService); mealMock.Setup(m => m.UpdateDish(dish)).Verifiable(); var dishController = new DishController(mealMock.Object); //Act var sut = dishController.Save(dish); //Assert sut.Should().BeOfType <RedirectToActionResult>().Which.ActionName.Should().Be("Index"); sut.Should().BeAssignableTo <IActionResult>().And.BeOfType <RedirectToActionResult>() .Which.RouteValues.Should().NotBeNull().And.ContainValue(dish.Id); mealMock.Verify(); }