diff options
Diffstat (limited to 'vendor/rails-2.0.2/actionmailer/test/abstract_unit.rb')
-rw-r--r-- | vendor/rails-2.0.2/actionmailer/test/abstract_unit.rb | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/vendor/rails-2.0.2/actionmailer/test/abstract_unit.rb b/vendor/rails-2.0.2/actionmailer/test/abstract_unit.rb new file mode 100644 index 000000000..9b7a4661b --- /dev/null +++ b/vendor/rails-2.0.2/actionmailer/test/abstract_unit.rb @@ -0,0 +1,49 @@ +require 'test/unit' + +$:.unshift "#{File.dirname(__FILE__)}/../lib" +require 'action_mailer' +require 'action_mailer/test_case' + +# Show backtraces for deprecated behavior for quicker cleanup. +ActiveSupport::Deprecation.debug = true + +$:.unshift "#{File.dirname(__FILE__)}/fixtures/helpers" +ActionMailer::Base.template_root = "#{File.dirname(__FILE__)}/fixtures" + +class MockSMTP + def self.deliveries + @@deliveries + end + + def initialize + @@deliveries = [] + end + + def sendmail(mail, from, to) + @@deliveries << [mail, from, to] + end +end + +class Net::SMTP + def self.start(*args) + yield MockSMTP.new + end +end + +# Wrap tests that use Mocha and skip if unavailable. +def uses_mocha(test_name) + gem 'mocha', ">=0.5" + require 'stubba' + yield +rescue Gem::LoadError + $stderr.puts "Skipping #{test_name} tests (Mocha >= 0.5 is required). `gem install mocha` and try again." +end + +def set_delivery_method(delivery_method) + @old_delivery_method = ActionMailer::Base.delivery_method + ActionMailer::Base.delivery_method = delivery_method +end + +def restore_delivery_method + ActionMailer::Base.delivery_method = @old_delivery_method +end |