aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorfrancis <francis>2009-04-27 02:25:14 +0000
committerfrancis <francis>2009-04-27 02:25:14 +0000
commit3e2600b5564cd3e1870d79ea008fec4b5b5bb066 (patch)
tree1dc763f37f261fdc51270bc5c979ec7036e3f5a0
parentbb4044ed9f56e3d52f96afca5642419361942dc1 (diff)
Factor out common bit of tests into a function.
-rw-r--r--spec/models/incoming_message_spec.rb42
1 files changed, 14 insertions, 28 deletions
diff --git a/spec/models/incoming_message_spec.rb b/spec/models/incoming_message_spec.rb
index 6e905988d..ec9efca0c 100644
--- a/spec/models/incoming_message_spec.rb
+++ b/spec/models/incoming_message_spec.rb
@@ -58,49 +58,35 @@ describe IncomingMessage, " folding quoted parts of emails" do
end
describe IncomingMessage, " checking validity to reply to" do
- it "says a valid email is fine" do
- @mail = mock("mail")
- @mail.stub!(:from_addrs).and_return( [ TMail::Address.parse("team@mysociety.org") ] )
+ def test_email(email, result)
+ @address = mock(TMail::Address)
+ @address.stub!(:spec).and_return(email)
+ @mail = mock(TMail::Mail)
+ @mail.stub!(:from_addrs).and_return( [ @address ] )
@incoming_message = IncomingMessage.new()
@incoming_message.stub!(:mail).and_return(@mail)
- @incoming_message.valid_to_reply_to?.should be_true
+ @incoming_message.valid_to_reply_to?.should == result
end
- it "says postmaster email is bad" do
- @mail = mock("mail")
- @mail.stub!(:from_addrs).and_return( [ TMail::Address.parse("postmaster@mysociety.org") ] )
- @incoming_message = IncomingMessage.new()
- @incoming_message.stub!(:mail).and_return(@mail)
+ it "says a valid email is fine" do
+ test_email("team@mysociety.org", true)
+ end
- @incoming_message.valid_to_reply_to?.should be_false
+ it "says postmaster email is bad" do
+ test_email("postmaster@mysociety.org", false)
end
it "says Mailer-Daemon email is bad" do
- @mail = mock("mail")
- @mail.stub!(:from_addrs).and_return( [ TMail::Address.parse("Mailer-Daemon@mysociety.org") ] )
- @incoming_message = IncomingMessage.new()
- @incoming_message.stub!(:mail).and_return(@mail)
-
- @incoming_message.valid_to_reply_to?.should be_false
+ test_email("Mailer-Daemon@mysociety.org", false)
end
it "says case mangled MaIler-DaemOn email is bad" do
- @mail = mock("mail")
- @mail.stub!(:from_addrs).and_return( [ TMail::Address.parse("MaIler-DaemOn@mysociety.org") ] )
- @incoming_message = IncomingMessage.new()
- @incoming_message.stub!(:mail).and_return(@mail)
-
- @incoming_message.valid_to_reply_to?.should be_false
+ test_email("MaIler-DaemOn@mysociety.org", false)
end
it "says Auto_Reply email is bad" do
- @mail = mock("mail")
- @mail.stub!(:from_addrs).and_return( [ TMail::Address.parse("Auto_Reply@mysociety.org") ] )
- @incoming_message = IncomingMessage.new()
- @incoming_message.stub!(:mail).and_return(@mail)
-
- @incoming_message.valid_to_reply_to?.should be_false
+ test_email("Auto_Reply@mysociety.org", false)
end