Upgraded Rails
[monkeycharger.git] / vendor / rails / actionmailer / test / abstract_unit.rb
blob9b7a4661b6e9558b0028abc089fe46d02f0705d2
1 require 'test/unit'
3 $:.unshift "#{File.dirname(__FILE__)}/../lib"
4 require 'action_mailer'
5 require 'action_mailer/test_case'
7 # Show backtraces for deprecated behavior for quicker cleanup.
8 ActiveSupport::Deprecation.debug = true
10 $:.unshift "#{File.dirname(__FILE__)}/fixtures/helpers"
11 ActionMailer::Base.template_root = "#{File.dirname(__FILE__)}/fixtures"
13 class MockSMTP
14   def self.deliveries
15     @@deliveries
16   end
18   def initialize
19     @@deliveries = []
20   end
22   def sendmail(mail, from, to)
23     @@deliveries << [mail, from, to]
24   end
25 end
27 class Net::SMTP
28   def self.start(*args)
29     yield MockSMTP.new
30   end
31 end
33 # Wrap tests that use Mocha and skip if unavailable.
34 def uses_mocha(test_name)
35   gem 'mocha', ">=0.5"
36   require 'stubba'
37   yield
38 rescue Gem::LoadError
39   $stderr.puts "Skipping #{test_name} tests (Mocha >= 0.5 is required). `gem install mocha` and try again."
40 end
42 def set_delivery_method(delivery_method)
43   @old_delivery_method = ActionMailer::Base.delivery_method
44   ActionMailer::Base.delivery_method = delivery_method
45 end
47 def restore_delivery_method
48   ActionMailer::Base.delivery_method = @old_delivery_method
49 end