public async Task Edit_Get_IDIsNull_ReturnsNotFound() { var controller = new VenueController(null); var result = await controller.Edit(null); Assert.IsType <NotFoundResult>(result); }
public async Task Edit_Post_IdsNotEqual_ReturnsNotFound() { var testVenue = GetTestVenues()[0]; var controller = new VenueController(null); var result = await controller.Edit(testVenue.ID + 1, testVenue); Assert.IsType <NotFoundResult>(result); }
public async Task Edit_Get_VenueIsNull_ReturnsNotFound() { var mockRepo = new Mock <IVenueRepository>(); mockRepo.Setup(repo => repo.GetVenueAsync(It.IsAny <int>())) .ReturnsAsync(GetTestVenues().Where(v => v.ID == -1).FirstOrDefault()); var controller = new VenueController(mockRepo.Object); var result = await controller.Edit(It.IsAny <int>()); Assert.IsType <NotFoundResult>(result); }
public async Task Edit_Post_InvalidModelState_ReturnsViewWithModel() { var controller = new VenueController(null); controller.ModelState.AddModelError("Name", "Required"); var mockVenue = new Venue(); var result = await controller.Edit(0, mockVenue); var viewResult = Assert.IsType <ViewResult>(result); Assert.IsAssignableFrom <Venue>(viewResult.ViewData.Model); }
public async Task Edit_Get_VenueFound_ReturnsViewResult() { var mockRepo = new Mock <IVenueRepository>(); mockRepo.Setup(repo => repo.GetVenueAsync(It.IsAny <int>())) .ReturnsAsync(GetTestVenues()[0]); var controller = new VenueController(mockRepo.Object); var result = await controller.Edit(It.IsAny <int>()); var viewResult = Assert.IsType <ViewResult>(result); Assert.IsAssignableFrom <Venue>(viewResult.ViewData.Model); }
public async Task Edit_Post_ValidModelState_ReturnsRedirectToActionResult() { var testVenue = GetTestVenues()[0]; var mockRepo = new Mock <IVenueRepository>(); mockRepo.Setup(repo => repo.Update(testVenue)) .ReturnsAsync(testVenue); var controller = new VenueController(mockRepo.Object); var result = await controller.Edit(testVenue.ID, testVenue); var redirectToActionResult = Assert.IsType <RedirectToActionResult>(result); Assert.Null(redirectToActionResult.ControllerName); Assert.Equal("details", redirectToActionResult.ActionName); }