コード例 #1
0
        public void Show_sets_version_to_1_when_not_provided()
        {
            const string Slug = "slug";

            var validator = Mock.Of<ICodeValidator>();
            var mockRepository = new Mock<IPostRepository>();

            mockRepository.Setup(x => x.GetVersion(Slug, 1)).Returns(new Post());

            var controller = new HomeController(mockRepository.Object, validator).WithContext(false);

            var result = controller.Show(Slug, null) as ViewResult;

            Assert.NotNull(result);

            var viewModel = result.Model as PostViewModel;

            Assert.NotNull(viewModel);
            mockRepository.Verify(x => x.GetVersion(Slug, 1), Times.Once());
        }
コード例 #2
0
        public void Show_returns_Json_when_responding_to_ajax_requests()
        {
            var validator = Mock.Of<ICodeValidator>();
            var mockRepository = new Mock<IPostRepository>();

            mockRepository.Setup(x => x.GetVersion(It.IsAny<string>(), It.IsAny<int>())).Returns(new Post());

            var controller = new HomeController(mockRepository.Object, validator).WithContext(true);

            var result = controller.Show(null, null) as JsonResult;

            Assert.NotNull(result);
        }
コード例 #3
0
        public void Show_returns_the_Error_view_when_the_post_could_not_be_found()
        {
            var validator = Mock.Of<ICodeValidator>();
            var mockRepository = new Mock<IPostRepository>();

            mockRepository.Setup(x => x.GetVersion(It.IsAny<string>(), It.IsAny<int>())).Returns<Post>(null);

            var controller = new HomeController(mockRepository.Object, validator).WithContext(false);

            var result = controller.Show(null, null) as ViewResult;

            Assert.NotNull(result);
            Assert.Equal("Error", result.ViewName);
        }
コード例 #4
0
        public void Show_redirects_if_version_is_less_than_1()
        {
            const string Slug = "slug";

            var repository = Mock.Of<IPostRepository>();
            var validator = Mock.Of<ICodeValidator>();

            var controller = new HomeController(repository, validator);

            var result = controller.Show(Slug, 0) as RedirectToRouteResult;

            Assert.NotNull(result);
            Assert.Equal(Slug, result.RouteValues[Slug]);
        }