aboutsummaryrefslogtreecommitdiffstats
path: root/test/unit/mailbox/bouncing_test.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/unit/mailbox/bouncing_test.rb')
-rw-r--r--test/unit/mailbox/bouncing_test.rb29
1 files changed, 29 insertions, 0 deletions
diff --git a/test/unit/mailbox/bouncing_test.rb b/test/unit/mailbox/bouncing_test.rb
new file mode 100644
index 0000000000..6ac806ba29
--- /dev/null
+++ b/test/unit/mailbox/bouncing_test.rb
@@ -0,0 +1,29 @@
+require_relative '../../test_helper'
+
+class BouncingWithReplyMailbox < ActionMailbox::Base
+ def process
+ bounce_with BounceMailer.bounce(to: mail.from)
+ end
+end
+
+class ActionMailbox::Base::BouncingTest < ActiveSupport::TestCase
+ include ActionMailer::TestHelper
+
+ setup do
+ @inbound_email = create_inbound_email_from_mail \
+ from: "sender@example.com", to: "replies@example.com", subject: "Bounce me"
+ end
+
+ test "bouncing with a reply" do
+ perform_enqueued_jobs only: ActionMailer::DeliveryJob do
+ BouncingWithReplyMailbox.receive @inbound_email
+ end
+
+ assert @inbound_email.bounced?
+ assert_emails 1
+
+ mail = ActionMailer::Base.deliveries.last
+ assert_equal %w[ sender@example.com ], mail.to
+ assert_equal "Your email was not delivered", mail.subject
+ end
+end