diff options
Diffstat (limited to 'lib/action_mailroom')
-rw-r--r-- | lib/action_mailroom/test_helper.rb | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/lib/action_mailroom/test_helper.rb b/lib/action_mailroom/test_helper.rb index 06a38f75b6..7f56831f36 100644 --- a/lib/action_mailroom/test_helper.rb +++ b/lib/action_mailroom/test_helper.rb @@ -2,11 +2,17 @@ module ActionMailroom module TestHelper # Create an InboundEmail record using an eml fixture in the format of message/rfc822 # referenced with +fixture_name+ located in +test/fixtures/files/fixture_name+. - def create_inbound_email(fixture_name, status: :processing) - raw_email = ActiveStorage::Blob.create_after_upload! \ - io: file_fixture(fixture_name).open, filename: fixture_name, content_type: 'message/rfc822' - - ActionMailroom::InboundEmail.create!(status: status, raw_email: raw_email) + def create_inbound_email_from_fixture(fixture_name, status: :processing) + create_inbound_email file_fixture(fixture_name).open, filename: fixture_name, status: status end + + def create_inbound_email_from_mail(status: :processing, &block) + create_inbound_email(StringIO.new(Mail.new { instance_eval(&block) }.to_s), status: status) + end + + def create_inbound_email(io, filename: 'mail.eml', status: status) + ActionMailroom::InboundEmail.create! status: status, raw_email: + ActiveStorage::Blob.create_after_upload!(io: io, filename: filename, content_type: 'message/rfc822') + end end end |