aboutsummaryrefslogtreecommitdiffstats
path: root/spec/models/purge_request_spec.rb
diff options
context:
space:
mode:
authorRobin Houston <robin.houston@gmail.com>2012-05-03 18:57:51 +0100
committerRobin Houston <robin.houston@gmail.com>2012-05-03 18:57:51 +0100
commit20324887036cccc940e1d68fe8c99864b5b634bd (patch)
treee8968ddf336b65d40d295421d19091f061d940ca /spec/models/purge_request_spec.rb
parentc86325840e2204daea36e68fac045a215a26eafe (diff)
parent858898510fe77550ac6550a6b306b5c7a2b93d31 (diff)
Merge branch 'develop' of github.com:sebbacon/alaveteli into develop
Diffstat (limited to 'spec/models/purge_request_spec.rb')
-rw-r--r--spec/models/purge_request_spec.rb32
1 files changed, 32 insertions, 0 deletions
diff --git a/spec/models/purge_request_spec.rb b/spec/models/purge_request_spec.rb
new file mode 100644
index 000000000..f7d01f784
--- /dev/null
+++ b/spec/models/purge_request_spec.rb
@@ -0,0 +1,32 @@
+require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
+require 'fakeweb'
+
+describe PurgeRequest, "purging things" do
+ before do
+ FakeWeb.last_request = nil
+ end
+
+ it 'should issue purge requests to the server' do
+ req = PurgeRequest.new(:url => "/begone_from_here",
+ :model => "don't care",
+ :model_id => "don't care")
+ req.save()
+ PurgeRequest.all().count.should == 1
+ PurgeRequest.purge_all()
+ PurgeRequest.all().count.should == 0
+ end
+
+ it 'should fail silently for a misconfigured server' do
+ FakeWeb.register_uri(:get, %r|brokenv|, :body => "BROKEN")
+ config = MySociety::Config.load_default()
+ config['VARNISH_HOST'] = "brokencache"
+ req = PurgeRequest.new(:url => "/begone_from_here",
+ :model => "don't care",
+ :model_id => "don't care")
+ req.save()
+ PurgeRequest.all().count.should == 1
+ PurgeRequest.purge_all()
+ PurgeRequest.all().count.should == 1
+ end
+end
+