aboutsummaryrefslogtreecommitdiffstats
path: root/actionmailer
diff options
context:
space:
mode:
authorJosé Valim <jose.valim@gmail.com>2010-01-26 19:15:20 +0100
committerJosé Valim <jose.valim@gmail.com>2010-01-26 19:15:32 +0100
commitaf43674c1cc73630736537a73e79a24ac2bef995 (patch)
treea012a938a47edac1ca987024dce2c79224359875 /actionmailer
parentbdc39fad3629f89f552e40d13b7612db15ffa552 (diff)
downloadrails-af43674c1cc73630736537a73e79a24ac2bef995.tar.gz
rails-af43674c1cc73630736537a73e79a24ac2bef995.tar.bz2
rails-af43674c1cc73630736537a73e79a24ac2bef995.zip
Fix failing tests on AM about render(:body => Hash).
Diffstat (limited to 'actionmailer')
-rw-r--r--actionmailer/lib/action_mailer/deprecated_api.rb6
-rw-r--r--actionmailer/lib/action_mailer/old_api.rb8
-rw-r--r--actionmailer/test/old_base/mail_layout_test.rb4
-rw-r--r--actionmailer/test/old_base/mail_render_test.rb47
-rw-r--r--actionmailer/test/old_base/mail_service_test.rb37
-rw-r--r--actionmailer/test/subscriber_test.rb2
6 files changed, 36 insertions, 68 deletions
diff --git a/actionmailer/lib/action_mailer/deprecated_api.rb b/actionmailer/lib/action_mailer/deprecated_api.rb
index 61101c26a1..36eec1087e 100644
--- a/actionmailer/lib/action_mailer/deprecated_api.rb
+++ b/actionmailer/lib/action_mailer/deprecated_api.rb
@@ -93,10 +93,12 @@ module ActionMailer
def render(*args)
options = args.last.is_a?(Hash) ? args.last : {}
- if options[:body]
+
+ if options[:body].is_a?(Hash)
ActiveSupport::Deprecation.warn(':body in render deprecated. Please use instance ' <<
'variables as assigns instead', caller[0,1])
- body options.delete(:body)
+
+ options[:body].each { |k,v| instance_variable_set(:"@#{k}", v) }
end
super
end
diff --git a/actionmailer/lib/action_mailer/old_api.rb b/actionmailer/lib/action_mailer/old_api.rb
index 22c3c518b1..4694958222 100644
--- a/actionmailer/lib/action_mailer/old_api.rb
+++ b/actionmailer/lib/action_mailer/old_api.rb
@@ -204,12 +204,8 @@ module ActionMailer
def create_parts
if String === @body
- self.response_body = @body
- end
-
- if String === response_body
- @parts.unshift create_inline_part(response_body)
- else
+ @parts.unshift create_inline_part(@body)
+ elsif @parts.empty? || @parts.all? { |p| p.content_disposition =~ /^attachment/ }
self.class.view_paths.first.find_all(@template, {}, @mailer_name).each do |template|
@parts << create_inline_part(render_to_body(:_template => template), template.mime_type)
end
diff --git a/actionmailer/test/old_base/mail_layout_test.rb b/actionmailer/test/old_base/mail_layout_test.rb
index 2abd3ece92..c69252efa9 100644
--- a/actionmailer/test/old_base/mail_layout_test.rb
+++ b/actionmailer/test/old_base/mail_layout_test.rb
@@ -14,7 +14,7 @@ class AutoLayoutMailer < ActionMailer::Base
from "tester@example.com"
@world = "Earth"
- render(:inline => "Hello, <%= @world %>", :layout => 'spam')
+ body render(:inline => "Hello, <%= @world %>", :layout => 'spam')
end
def nolayout
@@ -23,7 +23,7 @@ class AutoLayoutMailer < ActionMailer::Base
from "tester@example.com"
@world = "Earth"
- render(:inline => "Hello, <%= @world %>", :layout => false)
+ body render(:inline => "Hello, <%= @world %>", :layout => false)
end
def multipart(type = nil)
diff --git a/actionmailer/test/old_base/mail_render_test.rb b/actionmailer/test/old_base/mail_render_test.rb
index 7ba55b1bd2..4213c2a173 100644
--- a/actionmailer/test/old_base/mail_render_test.rb
+++ b/actionmailer/test/old_base/mail_render_test.rb
@@ -7,7 +7,7 @@ class RenderMailer < ActionMailer::Base
from "tester@example.com"
@world = "Earth"
- render :inline => "Hello, <%= @world %>"
+ body render(:inline => "Hello, <%= @world %>")
end
def file_template
@@ -16,16 +16,7 @@ class RenderMailer < ActionMailer::Base
from "tester@example.com"
@recipient = 'test@localhost'
- render :file => "templates/signed_up"
- end
-
- def implicit_body
- recipients 'test@localhost'
- subject "using helpers"
- from "tester@example.com"
-
- @recipient = 'test@localhost'
- render :template => "templates/signed_up"
+ body render(:file => "templates/signed_up")
end
def rxml_template
@@ -40,21 +31,13 @@ class RenderMailer < ActionMailer::Base
from "tester@example.com"
end
- def mailer_accessor
- recipients 'test@localhost'
- subject "Mailer Accessor"
- from "tester@example.com"
-
- render :inline => "Look, <%= mailer.subject %>!"
- end
-
def no_instance_variable
recipients 'test@localhost'
subject "No Instance Variable"
from "tester@example.com"
silence_warnings do
- render :inline => "Look, subject.nil? is <%= @subject.nil? %>!"
+ body render(:inline => "Look, subject.nil? is <%= @subject.nil? %>!")
end
end
@@ -81,13 +64,11 @@ class RenderMailer < ActionMailer::Base
part "text/html" do |p|
p.body = build_body_part('html', assigns)
- p.transfer_encoding = "base64"
end
end
def build_body_part(content_type, assigns, options = {})
render "#{template}.#{content_type}", :body => assigns
- # render options.merge(:file => "#{template}.#{content_type}", :body => assigns)
end
end
@@ -122,11 +103,6 @@ class RenderHelperTest < Test::Unit::TestCase
restore_delivery_method
end
- def test_implicit_body
- mail = RenderMailer.implicit_body
- assert_equal "Hello there, \n\nMr. test@localhost", mail.body.to_s.strip
- end
-
def test_inline_template
mail = RenderMailer.inline_template
assert_equal "Hello, Earth", mail.body.to_s.strip
@@ -147,11 +123,6 @@ class RenderHelperTest < Test::Unit::TestCase
assert_equal "Hey Ho, let's go!", mail.body.to_s.strip
end
- def test_mailer_accessor
- mail = RenderMailer.mailer_accessor.deliver
- assert_equal "Look, Mailer Accessor!", mail.body.to_s.strip
- end
-
def test_no_instance_variable
mail = RenderMailer.no_instance_variable.deliver
assert_equal "Look, subject.nil? is true!", mail.body.to_s.strip
@@ -159,12 +130,12 @@ class RenderHelperTest < Test::Unit::TestCase
def test_legacy_multipart_alternative
mail = RenderMailer.multipart_alternative.deliver
- assert_equal(2, email.parts.size)
- assert_equal("multipart/alternative", email.mime_type)
- assert_equal("text/plain", email.parts[0].mime_type)
- assert_equal("foo: bar", email.parts[0].body.encoded)
- assert_equal("text/html", email.parts[1].mime_type)
- assert_equal("<strong>foo</strong> bar", email.parts[1].body.encoded)
+ assert_equal(2, mail.parts.size)
+ assert_equal("multipart/alternative", mail.mime_type)
+ assert_equal("text/plain", mail.parts[0].mime_type)
+ assert_equal("foo: bar", mail.parts[0].body.encoded)
+ assert_equal("text/html", mail.parts[1].mime_type)
+ assert_equal("<strong>foo</strong> bar", mail.parts[1].body.encoded)
end
end
diff --git a/actionmailer/test/old_base/mail_service_test.rb b/actionmailer/test/old_base/mail_service_test.rb
index fb784328bc..70dafaf33c 100644
--- a/actionmailer/test/old_base/mail_service_test.rb
+++ b/actionmailer/test/old_base/mail_service_test.rb
@@ -27,20 +27,19 @@ class TestMailer < ActionMailer::Base
subject "[Cancelled] Goodbye #{recipient}"
from "system@loudthinking.com"
sent_on Time.local(2004, 12, 12)
-
- render :text => "Goodbye, Mr. #{recipient}"
+ body "Goodbye, Mr. #{recipient}"
end
def from_with_name
from "System <system@loudthinking.com>"
recipients "root@loudthinking.com"
- render :text => "Nothing to see here."
+ body "Nothing to see here."
end
def from_without_name
from "system@loudthinking.com"
recipients "root@loudthinking.com"
- render :text => "Nothing to see here."
+ body "Nothing to see here."
end
def cc_bcc(recipient)
@@ -51,7 +50,7 @@ class TestMailer < ActionMailer::Base
cc "nobody@loudthinking.com"
bcc "root@loudthinking.com"
- render :text => "Nothing to see here."
+ body "Nothing to see here."
end
def different_reply_to(recipient)
@@ -61,7 +60,7 @@ class TestMailer < ActionMailer::Base
sent_on Time.local(2008, 5, 23)
reply_to "atraver@gmail.com"
- render :text => "Nothing to see here."
+ body "Nothing to see here."
end
def iso_charset(recipient)
@@ -73,7 +72,7 @@ class TestMailer < ActionMailer::Base
bcc "root@loudthinking.com"
charset "iso-8859-1"
- render :text => "Nothing to see here."
+ body "Nothing to see here."
end
def unencoded_subject(recipient)
@@ -84,7 +83,7 @@ class TestMailer < ActionMailer::Base
cc "nobody@loudthinking.com"
bcc "root@loudthinking.com"
- render :text => "Nothing to see here."
+ body "Nothing to see here."
end
def extended_headers(recipient)
@@ -96,7 +95,7 @@ class TestMailer < ActionMailer::Base
bcc "Grytøyr <stian3@example.net>"
charset "iso-8859-1"
- render :text => "Nothing to see here."
+ body "Nothing to see here."
end
def utf8_body(recipient)
@@ -108,7 +107,7 @@ class TestMailer < ActionMailer::Base
bcc "Foo áëô îü <extended@example.net>"
charset "utf-8"
- render :text => "åœö blah"
+ body "åœö blah"
end
def multipart_with_mime_version(recipient)
@@ -158,7 +157,7 @@ class TestMailer < ActionMailer::Base
attachment :content_type => "image/jpeg", :filename => File.join(File.dirname(__FILE__), "fixtures", "attachments", "foo.jpg"),
:data => "123456789"
- render :text => "plain text default"
+ body "plain text default"
end
def implicitly_multipart_example(recipient, cs = nil, order = nil)
@@ -187,12 +186,12 @@ class TestMailer < ActionMailer::Base
from "test@example.com"
content_type "text/html"
- render :text => "<em>Emphasize</em> <strong>this</strong>"
+ body "<em>Emphasize</em> <strong>this</strong>"
end
def html_mail_with_underscores(recipient)
subject "html mail with underscores"
- render :text => %{<a href="http://google.com" target="_blank">_Google</a>}
+ body %{<a href="http://google.com" target="_blank">_Google</a>}
end
def custom_template(recipient)
@@ -219,7 +218,7 @@ class TestMailer < ActionMailer::Base
subject "various newlines"
from "test@example.com"
- render :text => "line #1\nline #2\rline #3\r\nline #4\r\r" +
+ body "line #1\nline #2\rline #3\r\nline #4\r\r" +
"line #5\n\nline#6\r\n\r\nline #7"
end
@@ -282,7 +281,7 @@ class TestMailer < ActionMailer::Base
from "One: Two <test@example.com>"
cc "Three: Four <test@example.com>"
bcc "Five: Six <test@example.com>"
- render :text => "testing"
+ body "testing"
end
def custom_content_type_attributes
@@ -290,7 +289,7 @@ class TestMailer < ActionMailer::Base
subject "custom content types"
from "some.one@somewhere.test"
content_type "text/plain; format=flowed"
- render :text => "testing"
+ body "testing"
end
def return_path
@@ -298,13 +297,13 @@ class TestMailer < ActionMailer::Base
subject "return path test"
from "some.one@somewhere.test"
headers["return-path"] = "another@somewhere.test"
- render :text => "testing"
+ body "testing"
end
def subject_with_i18n(recipient)
recipients recipient
from "system@loudthinking.com"
- render :text => "testing"
+ body "testing"
end
class << self
@@ -1111,7 +1110,7 @@ end
class MethodNamingTest < ActiveSupport::TestCase
class TestMailer < ActionMailer::Base
def send
- render :text => 'foo'
+ body 'foo'
end
end
diff --git a/actionmailer/test/subscriber_test.rb b/actionmailer/test/subscriber_test.rb
index 6c347b8392..3d1736d64f 100644
--- a/actionmailer/test/subscriber_test.rb
+++ b/actionmailer/test/subscriber_test.rb
@@ -11,7 +11,7 @@ class AMSubscriberTest < ActionMailer::TestCase
recipients "somewhere@example.com"
subject "basic"
from "basic@example.com"
- render :text => "Hello world"
+ body "Hello world"
end
def receive(mail)