aboutsummaryrefslogtreecommitdiffstats
path: root/spec/controllers
diff options
context:
space:
mode:
Diffstat (limited to 'spec/controllers')
-rw-r--r--spec/controllers/admin_public_body_categories_controller_spec.rb14
-rw-r--r--spec/controllers/admin_public_body_headings_controller_spec.rb9
-rw-r--r--spec/controllers/public_body_controller_spec.rb5
3 files changed, 16 insertions, 12 deletions
diff --git a/spec/controllers/admin_public_body_categories_controller_spec.rb b/spec/controllers/admin_public_body_categories_controller_spec.rb
index 4fb5181be..4c641bd75 100644
--- a/spec/controllers/admin_public_body_categories_controller_spec.rb
+++ b/spec/controllers/admin_public_body_categories_controller_spec.rb
@@ -214,15 +214,21 @@ describe AdminPublicBodyCategoriesController do
end
context 'when destroying a public body category' do
-
- it "destroys a public body category" do
+ it "destroys empty public body categories" do
pbc = PublicBodyCategory.create(:title => "Empty Category", :category_tag => "empty", :description => "-")
n = PublicBodyCategory.count
post :destroy, { :id => pbc.id }
response.should redirect_to(admin_categories_path)
PublicBodyCategory.count.should == n - 1
end
- end
-
+ it "destroys non-empty public body categories" do
+ authority = FactoryGirl.create(:public_body)
+ pbc = PublicBodyCategory.create(:title => "In-Use Category", :category_tag => "empty", :description => "-", :authorities => [authority])
+ n = PublicBodyCategory.count
+ post :destroy, { :id => pbc.id }
+ response.should redirect_to(admin_categories_path)
+ PublicBodyCategory.count.should == n - 1
+ end
+ end
end
diff --git a/spec/controllers/admin_public_body_headings_controller_spec.rb b/spec/controllers/admin_public_body_headings_controller_spec.rb
index 60f563e57..afbe0fa30 100644
--- a/spec/controllers/admin_public_body_headings_controller_spec.rb
+++ b/spec/controllers/admin_public_body_headings_controller_spec.rb
@@ -136,16 +136,19 @@ describe AdminPublicBodyHeadingsController do
@heading = FactoryGirl.create(:public_body_heading)
end
- it "does not destroy a public body heading that has associated categories" do
+ it "destroys a public body heading that has associated categories" do
category = FactoryGirl.create(:public_body_category)
link = FactoryGirl.create(:public_body_category_link,
:public_body_category => category,
:public_body_heading => @heading,
:category_display_order => 0)
n = PublicBodyHeading.count
+ n_links = PublicBodyCategoryLink.count
+
post :destroy, { :id => @heading.id }
- response.should redirect_to(edit_admin_heading_path(@heading))
- PublicBodyHeading.count.should == n
+ response.should redirect_to(admin_categories_path)
+ PublicBodyHeading.count.should == n - 1
+ PublicBodyCategoryLink.count.should == n_links - 1
end
it "destroys an empty public body heading" do
diff --git a/spec/controllers/public_body_controller_spec.rb b/spec/controllers/public_body_controller_spec.rb
index fc7143522..840b4bb28 100644
--- a/spec/controllers/public_body_controller_spec.rb
+++ b/spec/controllers/public_body_controller_spec.rb
@@ -7,7 +7,6 @@ describe PublicBodyController, "when showing a body" do
render_views
before(:each) do
- PublicBodyCategory.stub!(:load_categories)
load_raw_emails_data
get_fixtures_xapian_index
end
@@ -76,10 +75,6 @@ end
describe PublicBodyController, "when listing bodies" do
render_views
- before(:each) do
- PublicBodyCategory.stub!(:load_categories)
- end
-
it "should be successful" do
get :list
response.should be_success