aboutsummaryrefslogtreecommitdiffstats
path: root/spec/spec_helper.rb
diff options
context:
space:
mode:
authorMark Longair <mhl@pobox.com>2013-11-07 14:22:07 +0000
committerMark Longair <mhl@pobox.com>2013-11-07 14:22:07 +0000
commit7c8dccba9d266c479df2c125b724f8e12811d05f (patch)
treefdf3e8aa0594d6d58355abc72ff5c91377d20e49 /spec/spec_helper.rb
parent9b631dcc1e978bea10ebd3f534e8e565bc71b0ac (diff)
parent2244e67e1f4cf459361bc669e2bbe94c44bc79ea (diff)
Merge branch 'public-body-stats-fixes' into rails-3-develop
Diffstat (limited to 'spec/spec_helper.rb')
-rw-r--r--spec/spec_helper.rb25
1 files changed, 25 insertions, 0 deletions
diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb
index 6e65018f1..9d16f6387 100644
--- a/spec/spec_helper.rb
+++ b/spec/spec_helper.rb
@@ -158,6 +158,31 @@ Spork.prefork do
ActiveRecord::Base.default_timezone = old_zone
end
+ # To test the statistics calculations, it's helpful to have the
+ # request fixtures in different states, but changing the fixtures
+ # themselves disrupts many other tests. This function takes a
+ # block, and runs that block with the info requests for the
+ # Geraldine Quango altered so that one is hidden and there's a
+ # successful one.
+ def with_hidden_and_successful_requests
+ external = info_requests(:external_request)
+ chicken = info_requests(:naughty_chicken_request)
+ old_external_prominence = external.prominence
+ old_chicken_described_state = chicken.described_state
+ begin
+ external.prominence = 'hidden'
+ external.save!
+ chicken.described_state = 'successful'
+ chicken.save!
+ yield
+ ensure
+ external.prominence = old_external_prominence
+ external.save!
+ chicken.described_state = old_chicken_described_state
+ chicken.save!
+ end
+ end
+
def load_test_categories
PublicBodyCategories.add(:en, [
"Local and regional",