public void Edit_Post_EditsRecordAndSavesToDb() { // Arrange _context.Lunches.Add(new Lunch { Host = "Brent", Restaurants = new List <Restaurant> { new Restaurant { Name = "Lunchbox Labs", Latitude = 55, Longitude = 99 } }, MeetingTime = new DateTime(1999, 12, 31) }); _context.SaveChanges(); var controller = new LunchesController(_context); var editableRecordId = _context.Restaurants.First().Id; var recordEditGetResult = controller.Edit(editableRecordId) as ViewResult; var recordToEdit = recordEditGetResult.Model as LunchCreateEditViewModel; recordToEdit.Host = "Bob"; // Act var result = controller.Edit(editableRecordId, recordToEdit) as RedirectToRouteResult; // Assert _context.Lunches.First().Host.ShouldBe("Bob"); result.RouteValues["action"].ShouldBe("Index"); }
public void Edit_Get_ShowsRestaurantInTheView() { // Arrange _context.Lunches.Add(new Lunch { Host = "Brent", Restaurants = new List <Restaurant> { new Restaurant { Name = "Lunchbox Labs", Latitude = 55, Longitude = 99 } }, MeetingTime = new DateTime(1999, 12, 31) }); _context.SaveChanges(); var controller = new LunchesController(_context); // Act var Id = _context.Lunches.First().Id; var result = controller.Edit(Id) as ViewResult; // Assert result.ShouldNotBeNull(); result.Model.ShouldBeOfType <LunchCreateEditViewModel>(); }
public void Edit_Get_ThrowsIfRecordIdIsNull() { var controller = new LunchesController(_context); // Act var result = controller.Edit(null) as HttpStatusCodeResult; // Assert result.ShouldBeOfType <HttpStatusCodeResult>(); result.StatusCode.ShouldBe(400); }