aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorDavid Heinemeier Hansson <david@loudthinking.com>2018-09-21 16:44:48 -0700
committerDavid Heinemeier Hansson <david@loudthinking.com>2018-09-21 16:44:48 -0700
commit8eb239bd1a1350b151d57a639e589c68aed1f47a (patch)
tree64f98ff2a5690320d171b85be9bcbddb312adcad /test
parent26f4e359bf7ffc4612b3170e1423aaedfee62ef8 (diff)
downloadrails-8eb239bd1a1350b151d57a639e589c68aed1f47a.tar.gz
rails-8eb239bd1a1350b151d57a639e589c68aed1f47a.tar.bz2
rails-8eb239bd1a1350b151d57a639e589c68aed1f47a.zip
Add simply bounce handling
Bouncing is not an exceptional state, so let's not use exceptions to deal with it.
Diffstat (limited to 'test')
-rw-r--r--test/unit/mailbox/state_test.rb14
1 files changed, 14 insertions, 0 deletions
diff --git a/test/unit/mailbox/state_test.rb b/test/unit/mailbox/state_test.rb
index de9da54d3f..6215e02837 100644
--- a/test/unit/mailbox/state_test.rb
+++ b/test/unit/mailbox/state_test.rb
@@ -14,6 +14,14 @@ class UnsuccessfulMailbox < ActionMailroom::Mailbox
end
end
+class BouncingMailbox < ActionMailroom::Mailbox
+ def process
+ $processed = :bounced
+ bounced!
+ end
+end
+
+
class ActionMailroom::Mailbox::StateTest < ActiveSupport::TestCase
setup do
$processed = false
@@ -32,4 +40,10 @@ class ActionMailroom::Mailbox::StateTest < ActiveSupport::TestCase
assert @inbound_email.failed?
assert_equal :failure, $processed
end
+
+ test "bounced inbound emails are not delivered" do
+ BouncingMailbox.receive @inbound_email
+ assert @inbound_email.bounced?
+ assert_equal :bounced, $processed
+ end
end