예제 #1
0
        public void HomeController_Has_A_Post_Method_Which_Accepts_An_Id_And_Returns_The_Post_With_That_Id()
        {
            // Arrange
            DatabaseHelpers.Initialize(true);
            using (var repository = ObjectFactory.GetInstance<IBlogService>())
            {
                for (int i = 0; i < 15; i++)
                {
                    repository.Save(DummyLivePost());
                }
            }
            var controller = new HomeController();

            // Act
            var result = controller.Post(8) as ViewResult;

            // Assert
            Assert.IsNotNull(result);
            Assert.IsInstanceOfType(result.ViewData.Model, typeof(Post));
            Assert.AreEqual(8, (result.ViewData.Model as Post).Id);
        }
예제 #2
0
        public void HomeController_Has_A_Post_Method_Which_Accepts_An_Id_And_Returns_The_Post_With_That_Id_And_Can_Get_Comments()
        {
            // Arrange
            DatabaseHelpers.Initialize(true);
            using (var repository = ObjectFactory.GetInstance<IBlogService>())
            {
                var category = new Category() { Name = "Test Category" };

                for (int i = 0; i < 15; i++)
                {
                    var post = DummyLivePost();

                    post.Categories.Add(category);

                    for (int j = 0; j < 5; j++)
                    {
                        var comment = DummyLiveComment();

                        post.Comments.Add(comment);

                        repository.Save(comment);
                    }

                    repository.Save(post);
                }
                repository.Save(category);
            }
            var controller = new HomeController();

            // Act
            var result = controller.Post(8) as ViewResult;

            // Assert
            Assert.IsNotNull(result);
            Assert.IsInstanceOfType(result.ViewData.Model, typeof(Post));
            var modelPost = (result.ViewData.Model as Post);

            Assert.AreEqual(8, modelPost.Id);
            Assert.AreEqual(5, modelPost.Comments.Count);
        }
예제 #3
0
        public void HomeController_Has_A_Post_Method_Which_Accepts_An_Id()
        {
            // Arrange
            var controller = new HomeController();

            // Act
            var result = controller.Post(1);

            // Assert
            Assert.IsNotNull(result);
        }