mirror of
https://github.com/github/rails.git
synced 2026-04-26 03:00:59 -04:00
normalize arg for ActionMailer::TestCase tests method
This commit is contained in:
@@ -17,7 +17,14 @@ module ActionMailer
|
||||
|
||||
module ClassMethods
|
||||
def tests(mailer)
|
||||
self._mailer_class = mailer
|
||||
case mailer
|
||||
when String, Symbol
|
||||
self._mailer_class = mailer.to_s.camelize.constantize
|
||||
when Module
|
||||
self._mailer_class = mailer
|
||||
else
|
||||
raise NonInferrableMailerError.new(mailer)
|
||||
end
|
||||
end
|
||||
|
||||
def mailer_class
|
||||
|
||||
28
actionmailer/test/test_test.rb
Normal file
28
actionmailer/test/test_test.rb
Normal file
@@ -0,0 +1,28 @@
|
||||
require 'abstract_unit'
|
||||
|
||||
class TestTestMailer < ActionMailer::Base
|
||||
end
|
||||
|
||||
class CrazyNameMailerTest < ActionMailer::TestCase
|
||||
tests TestTestMailer
|
||||
|
||||
def test_set_mailer_class_manual
|
||||
assert_equal TestTestMailer, self.class.mailer_class
|
||||
end
|
||||
end
|
||||
|
||||
class CrazySymbolNameMailerTest < ActionMailer::TestCase
|
||||
tests :test_test_mailer
|
||||
|
||||
def test_set_mailer_class_manual_using_symbol
|
||||
assert_equal TestTestMailer, self.class.mailer_class
|
||||
end
|
||||
end
|
||||
|
||||
class CrazyStringNameMailerTest < ActionMailer::TestCase
|
||||
tests 'test_test_mailer'
|
||||
|
||||
def test_set_mailer_class_manual_using_string
|
||||
assert_equal TestTestMailer, self.class.mailer_class
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user