public void CreatePost_WithExistingJournalName_ShouldReturnView() { // Arrange Mock <IJournalService> journalService = new Mock <IJournalService>(); journalService .Setup(s => s.Exists(It.IsAny <string>())) .Returns(true); Mock <ITempDataDictionary> tempData = new Mock <ITempDataDictionary>(); string errorMessage = null; tempData .SetupSet(t => t[WebConstants.TempDataErrorMessage] = It.IsAny <string>()) .Callback((string key, object message) => errorMessage = message as string); JournalFormServiceModel formModel = this.GetJournalFormModel(); JournalsController journalsController = new JournalsController(journalService.Object); journalsController.TempData = tempData.Object; // Act IActionResult result = journalsController.Create(formModel); // Assert Assert.IsType <ViewResult>(result); object model = (result as ViewResult).Model; Assert.IsType <JournalFormServiceModel>(model); JournalFormServiceModel returnModel = model as JournalFormServiceModel; this.AssertJournals(formModel, returnModel); Assert.Equal(string.Format(WebConstants.EntryExists, Journal), errorMessage); }
public void CreatePost_WithNotSuccessfullyCreatedJournal_ShouldReturnBadRequest() { // Arrange Mock <IJournalService> journalService = new Mock <IJournalService>(); journalService .Setup(s => s.Exists(It.IsAny <string>())) .Returns(false); journalService .Setup(s => s.Create( It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())) .Returns(-1); JournalFormServiceModel formModel = this.GetJournalFormModel(); JournalsController journalsController = new JournalsController(journalService.Object); journalsController.TempData = Mock.Of <ITempDataDictionary>(); // Act IActionResult result = journalsController.Create(formModel); // Assert Assert.IsType <BadRequestResult>(result); }
public void CreateGet_ShouldReturnView() { // Arrange JournalsController journalsController = new JournalsController(null); // Act IActionResult result = journalsController.Create(); // Assert Assert.IsType <ViewResult>(result); }
public void CreatePost_WithSuccessfullyCreatedJournal_ShouldReturnRedirectResult() { // Arrange Mock <IJournalService> journalService = new Mock <IJournalService>(); const int journalId = 1; journalService .Setup(s => s.Exists(It.IsAny <string>())) .Returns(false); journalService .Setup(s => s.Create( It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>())) .Returns(journalId); Mock <ITempDataDictionary> tempData = new Mock <ITempDataDictionary>(); string successmessage = null; tempData .SetupSet(t => t[WebConstants.TempDataSuccessMessage] = It.IsAny <string>()) .Callback((string key, object message) => successmessage = message as string); JournalFormServiceModel formModel = this.GetJournalFormModel(); JournalsController journalsController = new JournalsController(journalService.Object); journalsController.TempData = tempData.Object; // Act IActionResult result = journalsController.Create(formModel); // Assert Assert.IsType <RedirectToActionResult>(result); RedirectToActionResult redirectResult = result as RedirectToActionResult; this.AssertRedirect(journalId, redirectResult); Assert.Equal(string.Format(WebConstants.SuccessfullEntityOperation, Journal, WebConstants.Added), successmessage); }