From 3829f9ecfd6fcd54edbc15f624ee3b68f6dae135 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Valim=20and=20Mikel=20Lindsaar?= Date: Thu, 21 Jan 2010 20:03:55 +1100 Subject: Adding tests for attachments['blah.rb'] = {} et al --- actionmailer/test/base_test.rb | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) (limited to 'actionmailer/test/base_test.rb') diff --git a/actionmailer/test/base_test.rb b/actionmailer/test/base_test.rb index b8d2e46241..f1f5f38482 100644 --- a/actionmailer/test/base_test.rb +++ b/actionmailer/test/base_test.rb @@ -42,12 +42,18 @@ class BaseTest < Test::Unit::TestCase class TestMailer < ActionMailer::Base def welcome(hash = {}) - headers['X-SPAM'] = "Not SPAM" hash = {:to => 'mikel@test.lindsaar.net', :from => 'jose@test.plataformatec.com', :subject => 'The first email on new API!'}.merge!(hash) mail(hash) end + def invoice(hash = {}) + attachments['invoice.pdf'] = 'This is test File content' + hash = {:to => 'mikel@test.lindsaar.net', :from => 'jose@test.plataformatec.com', + :subject => 'Your invoice is attached'}.merge!(hash) + mail(hash) + end + end def test_the_method_call_to_mail_does_not_raise_error @@ -84,6 +90,25 @@ class BaseTest < Test::Unit::TestCase # assert_equal("Not SPAM", email['X-SPAM']) # end + def test_should_allow_you_to_send_an_attachment + assert_nothing_raised { TestMailer.deliver_invoice } + end + + def test_should_allow_you_to_send_an_attachment + email = TestMailer.deliver_invoice + assert_equal(1, email.attachments.length) + end + + def test_should_allow_you_to_send_an_attachment + email = TestMailer.deliver_invoice + assert_equal('invoice.pdf', email.attachments[0].filename) + end + + def test_should_allow_you_to_send_an_attachment + email = TestMailer.deliver_invoice + assert_equal('This is test File content', email.attachments['invoice.pdf'].decoded) + end + def test_should_use_class_defaults end -- cgit v1.2.3