Beispiel #1
0
        public void AdminController_Has_An_Edit_Post_Post_Method_Accepting_A_Post_Object_Which_Then_Redirects_To_Edit_If_Fails_To_Save()
        {
            DatabaseHelpers.Initialize(true);

            var post = new Post();

            using (var repository = ObjectFactory.GetInstance<IBlogService>())
            {
                post = DummyLivePost();

                repository.Save(post);

                repository.CommitChanges();
            }

            var controller = new AdminController();

            post.Content = string.Empty;

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

            Assert.AreEqual(post, result.ViewData.Model as Post);
            Assert.AreEqual("AddPost", result.ViewName);
        }
Beispiel #2
0
        public void AdminController_Has_An_Edit_Post_Post_Method_Accepting_A_Post_Object_Which_Then_Redirects_To_Post_List()
        {
            DatabaseHelpers.Initialize(true);

            var post = new Post();

            using (var repository = ObjectFactory.GetInstance<IBlogService>())
            {
                post = DummyLivePost();

                repository.Save(post);

                repository.CommitChanges();
            }

            var controller = new AdminController();

            var result = controller.EditPost(post, null) as RedirectToRouteResult;

            Assert.AreEqual("Posts", result.RouteValues["action"]);
        }
Beispiel #3
0
        public void AdminController_Has_An_Edit_Post_Post_Method_Accepting_A_Post_Object_Which_Saves_Modifications()
        {
            DatabaseHelpers.Initialize(true);

            var post = new Post();

            using (var repository = ObjectFactory.GetInstance<IBlogService>())
            {
                post = DummyLivePost();

                repository.Save(post);

                repository.CommitChanges();
            }

            var controller = new AdminController();

            post.Content = "Blarg";

            controller.EditPost(post, null);

            using (var repository = ObjectFactory.GetInstance<IBlogService>())
            {
                var loadedPost = repository.GetPostById(post.Id);

                Assert.AreEqual("Blarg", loadedPost.Content);
            }
        }
Beispiel #4
0
        public void AdminController_Has_An_Edit_Post_Post_Method_Accepting_A_Post_Object_And_Can_Assign_Categories()
        {
            DatabaseHelpers.Initialize(true);

            var post = new Post();

            using (var repository = ObjectFactory.GetInstance<IBlogService>())
            {

                post = DummyLivePost();

                repository.Save(post);

                var category1 = new Category() { Name = "Cat1" };
                repository.Save(category1);
                var category2 = new Category() { Name = "Cat2" };
                repository.Save(category2);
                var category3 = new Category() { Name = "Cat3" };
                repository.Save(category3);

                repository.CommitChanges();

                Assert.AreEqual(0, post.Categories.Count);
            }

            var controller = new AdminController();

            var collection = new FormCollection();

            collection.Add("Category-1", "false");
            collection.Add("Category-2", "true false");
            collection.Add("Category-3", "true false");

            var result = controller.EditPost(post, collection) as ViewResult;

            Assert.AreEqual(2, post.Categories.Count);
        }
Beispiel #5
0
        public void AdminController_Has_An_Edit_Post_Post_Method_Accepting_A_Post_Object()
        {
            DatabaseHelpers.Initialize(true);

            var post = new Post();

            using (var repository = ObjectFactory.GetInstance<IBlogService>())
            {
                post = DummyLivePost();

                repository.Save(post);

                repository.CommitChanges();
            }

            var controller = new AdminController();

            var result = controller.EditPost(post, null);

            Assert.IsNotNull(result);
        }
Beispiel #6
0
        public void AdminController_Has_An_Edit_Post_Get_Method_Which_Accepts_An_Id_And_Returns_The_Post_With_That_Id()
        {
            DatabaseHelpers.Initialize(true);

            var post = new Post();

            using (var repository = ObjectFactory.GetInstance<IBlogService>())
            {
                post = DummyLivePost();

                repository.Save(post);

                repository.CommitChanges();
            }

            var controller = new AdminController();

            var result = controller.EditPost(post.Id) as ViewResult;

            Assert.AreEqual(post.Id, (result.ViewData.Model as Post).Id);
        }
Beispiel #7
0
        public void AdminController_Has_An_Edit_Post_Get_Method_Which_Accepts_An_Id()
        {
            var controller = new AdminController();

            var result = controller.EditPost(1);

            Assert.IsNotNull(result);
        }