public void SaveNote_Happy_Path() { const string subscriberID = "KNOWNSUBSCRIBER"; const string locationID = "KNOWNLOCATIONID"; var savenoteFormCollection = new FormCollection(); savenoteFormCollection["note"] = "DOESNOTMATTER"; var CreateSubNoteCalled = false; using (ShimsContext.Create()) { var myContext = new SIMPLTestContext(); var fakeUserDto = myContext.GetFakeUserDtoObject(); ShimCurrentUser.AsUserDto = () => fakeUserDto; ShimRosettianClient.AllInstances.CreateSubNoteStringNoteDtoUserDto = delegate { CreateSubNoteCalled = true; }; var testServiceHistoryController = new ServiceHistoryController(); var result = testServiceHistoryController.saveNote(savenoteFormCollection, subscriberID, locationID); Assert.IsNotNull(result, "Partial view result returned is null."); Assert.IsTrue(CreateSubNoteCalled, "RosettianClient.CreateSubNote was not called."); Assert.IsTrue(result != null, "The result from saveNote was not an ActionResult."); Assert.IsTrue(result is PartialViewResult, "The result from saveNote was not a PartialViewResult."); var saveNotePartialViewResult = result as PartialViewResult; Assert.AreEqual(saveNotePartialViewResult.ViewName, "ServiceHistoryDetails_Partial", "The result does not call the 'ServiceHistoryDetails_Partial' view"); Assert.IsTrue(saveNotePartialViewResult.Model is ServiceHistoryViewModel, "The result model form saveNote was not of type ServiceHistoryViewModel"); } }
public void SaveNote_Without_Note_Key_In_Formcollection() { const string subscriberID = "KNOWNSUBSCRIBER"; const string locationID = "KNOWNLOCATIONID"; var savenoteFormCollection = new FormCollection(); var CreateSubNoteCalled = false; const string expectedErrorMessage = "Note text cannot be empty."; using (ShimsContext.Create()) { ShimRosettianClient.AllInstances.CreateSubNoteStringNoteDtoUserDto = delegate { CreateSubNoteCalled = true; }; var testServiceHistoryController = new ServiceHistoryController(); var result = testServiceHistoryController.saveNote(savenoteFormCollection, subscriberID, locationID); Assert.IsNotNull(result, "Partial view result returned is null."); Assert.IsFalse(CreateSubNoteCalled, "RosettianClient.CreateSubNote was called."); Assert.IsTrue(result != null, "The result from saveNote was not an ActionResult."); Assert.IsTrue(result is PartialViewResult, "The result from saveNote was not a PartialViewResult."); var saveNotePartialViewResult = result as PartialViewResult; Assert.AreEqual("Error", saveNotePartialViewResult.ViewName, "The result does not call the 'Error' view."); Assert.IsTrue(saveNotePartialViewResult.ViewData.ContainsKey("error"), "ViewData does not contain 'error' key"); Assert.IsNotNull(saveNotePartialViewResult.ViewData["error"], "ViewData[\"error\"] was not set."); Assert.AreEqual(expectedErrorMessage, saveNotePartialViewResult.ViewData["error"], string.Format("ViewData[\"error\"] is incorrect. Actual: {0} Expected: {1}", saveNotePartialViewResult.ViewData["error"], expectedErrorMessage)); } }