Sha256: 85216e4b28998173968db0caad705dcb219ada0a6a9c8797437ce9cb8b956a02
Contents?: true
Size: 1.53 KB
Versions: 2
Compression:
Stored size: 1.53 KB
Contents
require 'abstract_unit' require 'action_view' require 'action_controller' class I18nTestMailer < ActionMailer::Base configure do |c| c.assets_dir = '' end def mail_with_i18n_subject(recipient) @recipient = recipient I18n.locale = :de mail(to: recipient, subject: I18n.t(:email_subject), from: "system@loudthinking.com", date: Time.local(2004, 12, 12)) end end class TestController < ActionController::Base def send_mail email = I18nTestMailer.mail_with_i18n_subject("test@localhost").deliver_now render text: "Mail sent - Subject: #{email.subject}" end end class ActionMailerI18nWithControllerTest < ActionDispatch::IntegrationTest Routes = ActionDispatch::Routing::RouteSet.new Routes.draw do get ':controller(/:action(/:id))' end class RoutedRackApp attr_reader :routes def initialize(routes, &blk) @routes = routes @stack = ActionDispatch::MiddlewareStack.new(&blk).build(@routes) end def call(env) @stack.call(env) end end APP = RoutedRackApp.new(Routes) def app APP end teardown do I18n.locale = I18n.default_locale end def test_send_mail Mail::SMTP.any_instance.expects(:deliver!) with_translation 'de', email_subject: '[Anmeldung] Willkommen' do get '/test/send_mail' assert_equal "Mail sent - Subject: [Anmeldung] Willkommen", @response.body end end protected def with_translation(locale, data) I18n.backend.store_translations(locale, data) yield ensure I18n.backend.reload! end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
activejob-lock-0.0.2 | rails/actionmailer/test/i18n_with_controller_test.rb |
activejob-lock-0.0.1 | rails/actionmailer/test/i18n_with_controller_test.rb |