public void Edit_ReturnsARecipeAndCanUpdateARecipe_WhenTheRecipeIDIsValid() { //Arrange var adminController = new AdminController(session); var recipe1 = session.Query<Recipe>().SingleOrDefault(x => x.Title == "Title1"); //Act ViewResult result = adminController.Edit(recipe1.ID) as ViewResult; var actual = result.Model as Recipe; var expected = session.Query<Recipe>().SingleOrDefault(x => x.ID == recipe1.ID); //Assert Assert.AreEqual(actual, expected); //update step //in admin-mode all fields cand be updated //Arrange var recipeToUpdate = new Recipe { Title = "UpdatedTitle", Description = "UpdatedDescription", ID = recipe1.ID, isIncorrect = false }; //Act ViewResult resultOnUpdate = adminController.Edit(recipe1.ID) as ViewResult; var expectedAfterUpdate = recipeToUpdate; adminController.Edit(recipeToUpdate); var actualAfterUpdate = session.Query<Recipe>().SingleOrDefault(recipe => recipe.ID == recipeToUpdate.ID); //Assert Assert.AreEqual(actualAfterUpdate, expectedAfterUpdate); }
public ActionResult Create(Recipe recipe) { //if (!ModelState.IsValid) // return View(); recipe.ID = Guid.NewGuid(); _documentSession.Store(recipe); TempData["Success"] = string.Format("Recipe {0} added successfully !", recipe.Title); return RedirectToAction("Index"); }
public ActionResult Edit(Recipe recipe) { var doc = _documentSession.Query<Recipe>().SingleOrDefault(recipeQuery => recipeQuery.ID == recipe.ID); doc.isIncorrect = recipe.isIncorrect; _documentSession.SaveChanges(); TempData["Success"] = string.Format("Saved changes to Recipe {0}", recipe.Title); return RedirectToAction("Index"); }
public void Edit_ReturnsARecipeAndCanUpdateARecipe_WhenTheRecipeIDIsVali() { //Arrange var homeController = new HomeController(session); var recipe1 = session.Query<Recipe>().SingleOrDefault(x => x.Title == "Title1"); //Act ViewResult result = homeController.Edit(recipe1.ID) as ViewResult; //Assert Assert.IsNotNull(result); //Act var actual = result.Model as Recipe; var expected = session.Query<Recipe>().SingleOrDefault(x => x.ID == recipe1.ID); //Assert Assert.AreEqual(actual, expected); //update step //Arrange var updatedRecipe = new Recipe { Title = "Title1", Description = "Description1", ID = recipe1.ID, //only the isIncorrect value cand be changet without being signed In isIncorrect = false }; //Act ViewResult resultOnUpdate = homeController.Edit(updatedRecipe) as ViewResult; var expectedAfterUpdate = updatedRecipe; homeController.Edit(updatedRecipe.ID); var actualAfterUpdate = session.Query<Recipe>().SingleOrDefault(x => x.ID == updatedRecipe.ID); //Assert Assert.AreEqual(actualAfterUpdate, expectedAfterUpdate); }
public void InitialiseTest() { documentStore = new EmbeddableDocumentStore { RunInMemory = true }; documentStore.Initialize(); session = documentStore.OpenSession(); var recipe1 = new Recipe { Title = "Title1", Description = "Description1", ID = Guid.NewGuid(), isIncorrect = false }; session.Store(recipe1); var recipe2 = new Recipe { Title = "Title2", Description = "Description2", ID = Guid.NewGuid(), isIncorrect = true }; session.Store(recipe2); var recipe3 = new Recipe { Title = "Title3", Description = "Description3", ID = Guid.NewGuid(), isIncorrect = false }; session.Store(recipe3); var recipe4 = new Recipe { Title = "Title4", Description = "Description4", ID = Guid.NewGuid(), isIncorrect = true }; session.Store(recipe4); session.SaveChanges(); }