Skip to content

Commit

Permalink
Fix that adding attachments lose a body
Browse files Browse the repository at this point in the history
  • Loading branch information
takeyuweb committed Jan 19, 2019
1 parent 9608b18 commit 8845309
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 2 deletions.
Expand Up @@ -22,7 +22,7 @@ def create
def new_mail
Mail.new(params.require(:mail).permit(:from, :to, :cc, :bcc, :in_reply_to, :subject, :body).to_h).tap do |mail|
params[:mail][:attachments].to_a.each do |attachment|
mail.attachments[attachment.original_filename] = { filename: attachment.path, content_type: attachment.content_type }
mail.add_file(filename: attachment.path, content: attachment.read)
end
end
end
Expand Down
Expand Up @@ -4,6 +4,25 @@

class Rails::Conductor::ActionMailbox::InboundEmailsControllerTest < ActionDispatch::IntegrationTest
test "create inbound email" do
with_rails_env("development") do
assert_difference -> { ActionMailbox::InboundEmail.count }, +1 do
post rails_conductor_inbound_emails_path, params: {
mail: {
from: "Jason Fried <jason@37signals.com>",
to: "Replies <replies@example.com>",
bcc: "",
in_reply_to: "<4e6e35f5a38b4_479f13bb90078178@small-app-01.mail>",
subject: "Create",
body: "New Mail"
}
}
end

assert_equal "New Mail", ActionMailbox::InboundEmail.last.mail.decoded
end
end

test "create inbound email with attachments" do
with_rails_env("development") do
assert_difference -> { ActionMailbox::InboundEmail.count }, +1 do
post rails_conductor_inbound_emails_path, params: {
Expand All @@ -19,7 +38,9 @@ class Rails::Conductor::ActionMailbox::InboundEmailsControllerTest < ActionDispa
}
end

assert_equal 2, ActionMailbox::InboundEmail.last.mail.attachments.size
mail = ActionMailbox::InboundEmail.last.mail
assert_equal 2, mail.attachments.size
assert_equal "Let's talk about these images:", mail.text_part.decoded
end
end

Expand Down

0 comments on commit 8845309

Please sign in to comment.