Это поддерживается в Edge , но ActionMailbox :: TestHelper 6.0.3.2 еще не реализовал его.
В качестве обходного пути я придумал следующее:
subject do
mail = Mail.new do
to 'nicolas@test.lindsaar.net.au'
from 'Mikel Lindsaar <mikel@test.lindsaar.net.au>'
subject 'First multipart email sent with Mail'
text_part do
body 'Here is the attachment you wanted'
end
html_part do
content_type 'text/html; charset=UTF-8'
body '<h1>Funky Title</h1><p>Here is the attachment you wanted</p>'
end
add_file File.join(File.dirname(__FILE__), '../support/fixtures/image.jpeg')
end
# Tap the route for processing.
create_inbound_email_from_source(mail.to_s, status: :processing).tap(&:route)
end
Если вы используете Edge или более новую версию, это должно работать:
receive_inbound_email_from_mail do |mail|
mail.to "David Heinemeier Hansson <david@loudthinking.com>"
mail.from "Bilbo Baggins <bilbo@bagend.com>"
mail.subject "Come down to the Shire!"
mail.text_part do |part|
part.body "Please join us for a party at Bag End"
end
mail.html_part do |part|
part.body "<h1>Please join us for a party at Bag End</h1>"
end
mail.add_file File.join(File.dirname(__FILE__), '../support/fixtures/image.jpeg')
end
Примечание: вам нужно будет изменить путь к файлу в соответствии с вашими потребностями. А методы receive_
такие же, как create_
, но обрабатывают почту.