public async Task EditPost_InconsistentInput_ReturnsNotFoundResult() { // Arrange var reservation = new Reservation { ReservationId = 2, CustomerId = 2, MembershipId = 2, Details = "something new" }; reservationRepoMock = new Mock <IReservationRepository>(); reservationRepoMock .Setup(repo => repo.UpdateAsync(reservation)) .Returns(Task.FromResult(1)); var controller = new ReservationsController(reservationRepoMock.Object); // Act var result = await controller.Edit(1, reservation); // Assert var redirectToActionResult = result.Should().BeOfType <NotFoundResult>(); }
public async Task EditPost_InvalidModelState_ReturnsNotFoundResult() { // Arrange var reservation = new Reservation { ReservationId = 2 }; reservationRepoMock = new Mock <IReservationRepository>(); reservationRepoMock .Setup(repo => repo.UpdateAsync(reservation)) .Returns(Task.FromResult(1)); var controller = new ReservationsController(reservationRepoMock.Object); controller.ModelState.AddModelError("Details", "Length too large"); // Act var result = await controller.Edit(2, reservation); // Assert var viewResult = result.Should().BeOfType <ViewResult>(); var model = (Reservation)viewResult.Subject.Model; model.Should().Be(reservation); }
public void Edit_RedirectsWhenInputDataIsIncorrect() { var result = _controller.Edit(-1) as NotFoundResult; Assert.AreEqual(404, result.StatusCode); }