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]);
        }
Example #4
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);
        }
Example #5
0
        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());
        }