rails/actionpack/test/abstract/translation_test.rb
Ryuta Kamizono f006de5dc5 Fix broken alignments caused by auto-correct commit 411ccbd
Hash syntax auto-correcting breaks alignments. 411ccbdab2608c62aabdb320d52cb02d446bb39c
2016-08-10 06:36:39 +09:00

77 lines
2.0 KiB
Ruby

require "abstract_unit"
module AbstractController
module Testing
class TranslationController < AbstractController::Base
include AbstractController::Translation
end
class TranslationControllerTest < ActiveSupport::TestCase
def setup
@controller = TranslationController.new
I18n.backend.store_translations(:en,
one: {
two: "bar",
},
abstract_controller: {
testing: {
translation: {
index: {
foo: "bar",
},
no_action: "no_action_tr",
},
},
})
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
@controller.stub :action_name, :index do
assert_equal "bar", @controller.t(".foo")
end
end
def test_lazy_lookup_with_symbol
@controller.stub :action_name, :index do
assert_equal "bar", @controller.t(:'.foo')
end
end
def test_lazy_lookup_fallback
@controller.stub :action_name, :index do
assert_equal "no_action_tr", @controller.t(:'.no_action')
end
end
def test_default_translation
@controller.stub :action_name, :index do
assert_equal "bar", @controller.t("one.two")
end
end
def test_localize
time, expected = Time.gm(2000), "Sat, 01 Jan 2000 00:00:00 +0000"
I18n.stub :localize, expected do
assert_equal expected, @controller.l(time)
end
end
end
end
end