public async Task DeleteConfirmed_Post_ModelIsValid_RedirectToIndex() { Mock <PostService> mock = new Mock <PostService>(); PostController controller = GetNewPostController(mock.Object, null, null); RedirectToRouteResult result = (await controller.DeleteConfirmed(1)) as RedirectToRouteResult; Assert.AreEqual("Index", result.RouteValues["action"]); }
public async Task DeleteConfirmed_Post_ModelIsInvalid_AsksForErrorView() { Mock <PostService> mock = new Mock <PostService>(); mock.Setup(m => m.DeleteAsync(It.IsAny <int>())).Throws(new ValidationException("DeleteAsync method throws Exception", "")); PostController controller = GetNewPostController(mock.Object, null, null); ViewResult result = (await controller.DeleteConfirmed(1)) as ViewResult; Assert.AreEqual("Error", result.ViewName); }
public async Task DeleteConfirmed_Post_ModelIsInvalid_RetrievesExceptionMessageFromModel() { Mock <PostService> mock = new Mock <PostService>(); mock.Setup(m => m.DeleteAsync(It.IsAny <int>())).Throws(new ValidationException("DeleteAsync method throws Exception", "")); PostController controller = GetNewPostController(mock.Object, null, null); ViewResult result = (await controller.DeleteConfirmed(1)) as ViewResult; string[] model = result.ViewData.Model as string[]; Assert.AreEqual("DeleteAsync method throws Exception", model[0]); }
public void PostControllerDeleteConfirmedReturnsView_ExpectedSuccess() { // Arrange Mock <IPostLogic> mockPostLogic = new Mock <IPostLogic>(); mockPostLogic.Setup(x => x.GetSinglePost(It.IsAny <Int32>())).ReturnsAsync(GetPost()); var controllerUnderTest = new PostController(_context, mockPostLogic.Object); // Act var result = controllerUnderTest.DeleteConfirmed(1); // Assert var viewResult = Assert.IsType <Task <IActionResult> >(result); }
public void Given_valid_postId_When_DeleteConfirmed_Returns_Home_Index() { //Given var model = new BigPostViewModel(); _postBuilder.Setup(x => x.BuildBigPostViewModel(It.IsAny <int>())).Returns(model); var postId = 1; //When var result = _postController.DeleteConfirmed(postId) as RedirectToRouteResult; //Then Assert.NotNull(result); Assert.AreEqual("Home", result.RouteValues["controller"].ToString()); Assert.AreEqual("Index", result.RouteValues["action"].ToString()); }