aboutsummaryrefslogtreecommitdiffstats
path: root/spec/models
diff options
context:
space:
mode:
authorfrancis <francis>2008-05-19 12:01:21 +0000
committerfrancis <francis>2008-05-19 12:01:21 +0000
commit6e3c54b72c03f5b0d3bd46287b75808868df34b6 (patch)
tree55307795925ba4db7205e9b2e16bfc22113d633f /spec/models
parentf1b7a36b6c7a70548a3e88c750a460c860c12bfc (diff)
Option to stop new respones for individual requests which for whatever reason
are getting spam.
Diffstat (limited to 'spec/models')
-rw-r--r--spec/models/request_mailer_spec.rb23
1 files changed, 22 insertions, 1 deletions
diff --git a/spec/models/request_mailer_spec.rb b/spec/models/request_mailer_spec.rb
index 8c7eaefe2..98c27cca9 100644
--- a/spec/models/request_mailer_spec.rb
+++ b/spec/models/request_mailer_spec.rb
@@ -21,11 +21,32 @@ describe RequestMailer, " when receiving incoming mail" do
ir.incoming_messages.size.should == 1
deliveries = ActionMailer::Base.deliveries
- deliveries.size.should == 1
+ deliveries.size.should == 1
mail = deliveries[0]
mail.to.should == [ MySociety::Config.get("CONTACT_EMAIL", 'contact@localhost') ]
+ deliveries.clear
end
+ it "should return incoming mail to sender when a request is stopped for spam" do
+ # mark request as anti-spam
+ ir = info_requests(:fancy_dog_request)
+ ir.stop_new_responses = true
+ ir.save!
+
+ # test what happens if something arrives
+ ir.incoming_messages.size.should == 1 # in the fixture
+ receive_incoming_mail('incoming-request-plain.email', ir.incoming_email)
+ ir.incoming_messages.size.should == 1 # nothing should arrive
+
+ # should be a message back to sender
+ deliveries = ActionMailer::Base.deliveries
+ deliveries.size.should == 1
+ mail = deliveries[0]
+ mail.to.should == [ 'geraldinequango@localhost' ]
+ deliveries.clear
+ end
+
+
it "should not mutilate long URLs when trying to word wrap them" do
long_url = 'http://www.this.is.quite.a.long.url.flourish.org/there.is.no.way.it.is.short.whatsoever'
body = "This is a message with quite a long URL in it. It also has a paragraph, being this one that has quite a lot of text in it to. Enough to test the wrapping of itself.