aboutsummaryrefslogtreecommitdiffstats
path: root/spec/controllers
diff options
context:
space:
mode:
authorUģis Ozols <ugis.ozolss@gmail.com>2012-07-06 15:13:50 +0300
committerUģis Ozols <ugis.ozolss@gmail.com>2012-07-06 15:16:15 +0300
commit36881f83c74a12b754ef4e5c9b1781e6d39dc2a5 (patch)
tree4a9f64e3a9f6fe1cf78437b6f920ed3f4ee2cc1c /spec/controllers
parentbb5a9adb50e8330f8b3af2ccfd5029243573e0a4 (diff)
downloadrefinerycms-blog-36881f83c74a12b754ef4e5c9b1781e6d39dc2a5.tar.gz
refinerycms-blog-36881f83c74a12b754ef4e5c9b1781e6d39dc2a5.tar.bz2
refinerycms-blog-36881f83c74a12b754ef4e5c9b1781e6d39dc2a5.zip
Split rejected and approved comment actions into separate controller actions.
Diffstat (limited to 'spec/controllers')
-rw-r--r--spec/controllers/refinery/blog/admin/comments_controller_spec.rb84
1 files changed, 84 insertions, 0 deletions
diff --git a/spec/controllers/refinery/blog/admin/comments_controller_spec.rb b/spec/controllers/refinery/blog/admin/comments_controller_spec.rb
new file mode 100644
index 0000000..dc7aef8
--- /dev/null
+++ b/spec/controllers/refinery/blog/admin/comments_controller_spec.rb
@@ -0,0 +1,84 @@
+require "spec_helper"
+
+module Refinery
+ module Blog
+ module Admin
+ describe CommentsController do
+ refinery_login_with :refinery_user
+
+ describe "#index" do
+ let!(:comment) { FactoryGirl.create(:blog_comment) }
+
+ it "succeeds" do
+ get :index
+ response.should be_success
+ response.should render_template(:index)
+ end
+
+ it "assigns unmoderated comments" do
+ get :index
+ assigns(:comments).first.should eq(comment)
+ end
+ end
+
+ describe "#approved" do
+ let!(:comment) { FactoryGirl.create(:approved_comment) }
+
+ it "succeeds" do
+ get :approved
+ response.should be_success
+ response.should render_template(:index)
+ end
+
+ it "assigns approved comments" do
+ get :approved
+ assigns(:comments).first.should eq(comment)
+ end
+ end
+
+ describe "#approve" do
+ let!(:comment) { FactoryGirl.create(:blog_comment) }
+
+ it "redirects on success" do
+ post :approve, :id => comment.id
+ response.should be_redirect
+ end
+
+ it "approves the comment" do
+ post :approve, :id => comment.id
+ Refinery::Blog::Comment.approved.count.should eq(1)
+ end
+ end
+
+ describe "#rejected" do
+ let!(:comment) { FactoryGirl.create(:rejected_comment) }
+
+ it "succeeds" do
+ get :rejected
+ response.should be_success
+ response.should render_template(:index)
+ end
+
+ it "assigns rejected comments" do
+ get :rejected
+ assigns(:comments).first.should eq(comment)
+ end
+ end
+
+ describe "#reject" do
+ let!(:comment) { FactoryGirl.create(:blog_comment) }
+
+ it "redirects on success" do
+ post :reject, :id => comment.id
+ response.should be_redirect
+ end
+
+ it "rejects the comment" do
+ post :reject, :id => comment.id
+ Refinery::Blog::Comment.rejected.count.should eq(1)
+ end
+ end
+ end
+ end
+ end
+end