blob: 8302b1d5ccce65440fc9ac8b1a4e886bccdef6c5 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
# frozen_string_literal: true
require_relative "../../test_helper"
class ApplicationMailbox < ActionMailbox::Base
routing "replies@example.com" => :replies
end
class RepliesMailbox < ActionMailbox::Base
def process
$processed = mail.subject
end
end
class ActionMailbox::Base::RoutingTest < ActiveSupport::TestCase
setup do
$processed = false
end
test "string routing" do
ApplicationMailbox.route create_inbound_email_from_fixture("welcome.eml")
assert_equal "Discussion: Let's debate these attachments", $processed
end
test "delayed routing" do
perform_enqueued_jobs only: ActionMailbox::RoutingJob do
create_inbound_email_from_fixture "welcome.eml", status: :pending
assert_equal "Discussion: Let's debate these attachments", $processed
end
end
test "mailbox_for" do
inbound_email = create_inbound_email_from_fixture "welcome.eml", status: :pending
assert_equal RepliesMailbox, ApplicationMailbox.mailbox_for(inbound_email)
end
end
|