public void EditCake_ReturnsBadRequest_Problem() { // Arrange var newCake = new Cake { Id = 1, Name = "Royal Cake", Category = new Category { Id = 1, Name = "CiocolateCake" }, Description = "Best cake", ImageUrl = "/img/img1.jpg" }; var mockRepositoryWrapper = new Mock <IRepositoryWrapper>(); mockRepositoryWrapper.Setup(repo => repo.Cake.GetCakeByNameAsNoTracking(newCake.Name)); var mockAdministrationService = new Mock <IAdministrationService>(); var controller = new AdministrationController(mockRepositoryWrapper.Object, mockAdministrationService.Object); controller.ModelState.AddModelError("Price", "Required!"); // Act var result = controller.EditCake(newCake); // Assert var badRequestResult = Assert.IsType <BadRequestObjectResult>(result.Result); Assert.IsType <SerializableError>(badRequestResult.Value); }
public void EditCake_ReturnsIActionResult_Success() { //Arrange var cake = new Cake { Id = 1, Name = "Royal Cake", Category = new Category { Id = 1, Name = "CiocolateCake" }, Description = "Best cake", ImageUrl = "/img/img1.jpg", IsCakeOfTheWeek = true, }; var mockRepositoryWrapper = new Mock <IRepositoryWrapper>(); mockRepositoryWrapper.Setup(repo => repo.Cake.GetByIdAsync(cake.Id)); mockRepositoryWrapper.Setup(repo => repo.Cake.Update(cake)); var mockAdministrationService = new Mock <IAdministrationService>(); var controller = new AdministrationController(mockRepositoryWrapper.Object, mockAdministrationService.Object); //Act var result = controller.EditCake(cake); //Asseet var iactionResult = Assert.IsAssignableFrom <IActionResult>(result.Result); Assert.NotNull(result.Result); Assert.NotNull(iactionResult); }
public void EditCake_ReturnsManageCakeViewModel_Success() { var cake = new Cake { Id = 1, Name = "Royal Cake", Category = new Category { Id = 1, Name = "CiocolateCake" }, Description = "Best cake", ImageUrl = "/img/img1.jpg" }; var mockRepositoryWrapper = new Mock <IRepositoryWrapper>(); mockRepositoryWrapper.Setup(repo => repo.Cake.GetByIdAsync(cake.Id)); mockRepositoryWrapper.Setup(repo => repo.Category.GetAllAsync()); var mockAdministrationService = new Mock <IAdministrationService>(); var controller = new AdministrationController(mockRepositoryWrapper.Object, mockAdministrationService.Object); //Act var result = controller.EditCake(cake.Id); //Assert var manageCakeViewModelResult = Assert.IsType <ManageCakeViewModel>(result.Result); Assert.NotNull(result.Result); Assert.NotNull(manageCakeViewModelResult); }