2008-09-09 17:19:07 -04:00
|
|
|
require 'abstract_unit'
|
|
|
|
|
2013-01-20 09:53:43 -05:00
|
|
|
module AbstractController
|
|
|
|
module Testing
|
|
|
|
class TranslationController < AbstractController::Base
|
|
|
|
include AbstractController::Translation
|
|
|
|
end
|
|
|
|
|
|
|
|
class TranslationControllerTest < ActiveSupport::TestCase
|
|
|
|
def setup
|
|
|
|
@controller = TranslationController.new
|
2013-08-07 04:33:28 -04:00
|
|
|
I18n.backend.store_translations(:en, {
|
|
|
|
one: {
|
|
|
|
two: 'bar',
|
|
|
|
},
|
|
|
|
abstract_controller: {
|
|
|
|
testing: {
|
|
|
|
translation: {
|
|
|
|
index: {
|
|
|
|
foo: 'bar',
|
|
|
|
},
|
2013-10-22 10:14:50 -04:00
|
|
|
no_action: 'no_action_tr',
|
2013-08-07 04:33:28 -04:00
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
})
|
2013-01-20 09:53:43 -05:00
|
|
|
end
|
|
|
|
|
|
|
|
def test_action_controller_base_responds_to_translate
|
|
|
|
assert_respond_to @controller, :translate
|
|
|
|
end
|
|
|
|
|
|
|
|
def test_action_controller_base_responds_to_t
|
|
|
|
assert_respond_to @controller, :t
|
|
|
|
end
|
|
|
|
|
|
|
|
def test_action_controller_base_responds_to_localize
|
|
|
|
assert_respond_to @controller, :localize
|
|
|
|
end
|
|
|
|
|
|
|
|
def test_action_controller_base_responds_to_l
|
|
|
|
assert_respond_to @controller, :l
|
|
|
|
end
|
|
|
|
|
|
|
|
def test_lazy_lookup
|
2015-08-21 16:33:50 -04:00
|
|
|
@controller.stub :action_name, :index do
|
|
|
|
assert_equal 'bar', @controller.t('.foo')
|
|
|
|
end
|
2013-08-07 04:33:28 -04:00
|
|
|
end
|
|
|
|
|
|
|
|
def test_lazy_lookup_with_symbol
|
2015-08-21 16:33:50 -04:00
|
|
|
@controller.stub :action_name, :index do
|
|
|
|
assert_equal 'bar', @controller.t(:'.foo')
|
|
|
|
end
|
2013-01-20 09:53:43 -05:00
|
|
|
end
|
|
|
|
|
2013-10-22 10:14:50 -04:00
|
|
|
def test_lazy_lookup_fallback
|
2015-08-21 16:33:50 -04:00
|
|
|
@controller.stub :action_name, :index do
|
|
|
|
assert_equal 'no_action_tr', @controller.t(:'.no_action')
|
|
|
|
end
|
2013-10-22 10:14:50 -04:00
|
|
|
end
|
|
|
|
|
2013-01-20 09:53:43 -05:00
|
|
|
def test_default_translation
|
2015-08-21 16:33:50 -04:00
|
|
|
@controller.stub :action_name, :index do
|
|
|
|
assert_equal 'bar', @controller.t('one.two')
|
|
|
|
end
|
2013-01-20 09:53:43 -05:00
|
|
|
end
|
|
|
|
|
|
|
|
def test_localize
|
|
|
|
time, expected = Time.gm(2000), 'Sat, 01 Jan 2000 00:00:00 +0000'
|
2015-08-21 16:33:50 -04:00
|
|
|
I18n.stub :localize, expected do
|
|
|
|
assert_equal expected, @controller.l(time)
|
|
|
|
end
|
2013-01-20 09:53:43 -05:00
|
|
|
end
|
|
|
|
end
|
2013-01-20 09:44:03 -05:00
|
|
|
end
|
2012-01-05 20:01:45 -05:00
|
|
|
end
|