From 4e6c8045c3c5f7b914040c3bbb2cbbd901f45854 Mon Sep 17 00:00:00 2001 From: John Hawthorn Date: Fri, 1 Mar 2019 14:07:59 -0800 Subject: Add test and change how format set in ActionMailer Previously this used self.formats= to set the format which render would use to find templates. This worked, but was untested, and looked a little confusing because it was doing the mutation within a loop. This commit replaces the assignment with passing formats: [format] into the render call, which makes it more obvious that that's the purpose of the format. It also adds a test to verify the formats being used. --- actionmailer/lib/action_mailer/base.rb | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'actionmailer/lib/action_mailer/base.rb') diff --git a/actionmailer/lib/action_mailer/base.rb b/actionmailer/lib/action_mailer/base.rb index 8595b1e063..5b6e7121b3 100644 --- a/actionmailer/lib/action_mailer/base.rb +++ b/actionmailer/lib/action_mailer/base.rb @@ -974,9 +974,8 @@ module ActionMailer each_template(Array(templates_path), templates_name).map do |template| format = template.format || self.formats.first - self.formats = [format] { - body: render(template: template), + body: render(template: template, formats: [format]), content_type: Mime[format].to_s } end -- cgit v1.2.3