2017-07-09 13:41:28 -04:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2011-06-06 14:17:44 -04:00
|
|
|
require "cases/helper"
|
2016-08-06 12:26:20 -04:00
|
|
|
require "models/topic"
|
|
|
|
require "models/reply"
|
2008-08-16 14:01:42 -04:00
|
|
|
|
2010-07-14 19:35:52 -04:00
|
|
|
class ActiveRecordI18nTests < ActiveRecord::TestCase
|
2008-08-16 14:01:42 -04:00
|
|
|
def setup
|
2008-08-27 04:37:01 -04:00
|
|
|
I18n.backend = I18n::Backend::Simple.new
|
2008-08-16 14:01:42 -04:00
|
|
|
end
|
2010-08-14 01:13:00 -04:00
|
|
|
|
2008-08-16 14:01:42 -04:00
|
|
|
def test_translated_model_attributes
|
2016-08-16 03:30:11 -04:00
|
|
|
I18n.backend.store_translations "en", activerecord: { attributes: { topic: { title: "topic title attribute" } } }
|
2016-08-06 12:26:20 -04:00
|
|
|
assert_equal "topic title attribute", Topic.human_attribute_name("title")
|
2008-08-16 14:01:42 -04:00
|
|
|
end
|
2010-08-14 01:13:00 -04:00
|
|
|
|
2009-08-09 13:42:38 -04:00
|
|
|
def test_translated_model_attributes_with_symbols
|
2016-08-16 03:30:11 -04:00
|
|
|
I18n.backend.store_translations "en", activerecord: { attributes: { topic: { title: "topic title attribute" } } }
|
2016-08-06 12:26:20 -04:00
|
|
|
assert_equal "topic title attribute", Topic.human_attribute_name(:title)
|
2009-08-09 13:42:38 -04:00
|
|
|
end
|
2008-08-16 14:01:42 -04:00
|
|
|
|
|
|
|
def test_translated_model_attributes_with_sti
|
2016-08-16 03:30:11 -04:00
|
|
|
I18n.backend.store_translations "en", activerecord: { attributes: { reply: { title: "reply title attribute" } } }
|
2016-08-06 12:26:20 -04:00
|
|
|
assert_equal "reply title attribute", Reply.human_attribute_name("title")
|
2008-08-16 14:01:42 -04:00
|
|
|
end
|
|
|
|
|
|
|
|
def test_translated_model_attributes_with_sti_fallback
|
2016-08-16 03:30:11 -04:00
|
|
|
I18n.backend.store_translations "en", activerecord: { attributes: { topic: { title: "topic title attribute" } } }
|
2016-08-06 12:26:20 -04:00
|
|
|
assert_equal "topic title attribute", Reply.human_attribute_name("title")
|
2008-08-16 14:01:42 -04:00
|
|
|
end
|
|
|
|
|
|
|
|
def test_translated_model_names
|
2016-08-16 03:30:11 -04:00
|
|
|
I18n.backend.store_translations "en", activerecord: { models: { topic: "topic model" } }
|
2016-08-06 12:26:20 -04:00
|
|
|
assert_equal "topic model", Topic.model_name.human
|
2008-08-16 14:01:42 -04:00
|
|
|
end
|
|
|
|
|
|
|
|
def test_translated_model_names_with_sti
|
2016-08-16 03:30:11 -04:00
|
|
|
I18n.backend.store_translations "en", activerecord: { models: { reply: "reply model" } }
|
2016-08-06 12:26:20 -04:00
|
|
|
assert_equal "reply model", Reply.model_name.human
|
2008-08-16 14:01:42 -04:00
|
|
|
end
|
|
|
|
|
|
|
|
def test_translated_model_names_with_sti_fallback
|
2016-08-16 03:30:11 -04:00
|
|
|
I18n.backend.store_translations "en", activerecord: { models: { topic: "topic model" } }
|
2016-08-06 12:26:20 -04:00
|
|
|
assert_equal "topic model", Reply.model_name.human
|
2008-08-16 14:01:42 -04:00
|
|
|
end
|
|
|
|
end
|