aboutsummaryrefslogtreecommitdiffstats
path: root/activemodel/test/cases/translation_test.rb
diff options
context:
space:
mode:
authorJosé Valim <jose.valim@gmail.com>2009-10-20 22:20:01 -0200
committerCarl Lerche <carllerche@mac.com>2009-10-20 17:52:32 -0700
commite714b499cc1f7ebc84f8d0e96607b79e60f2828d (patch)
treea9725eb2101a56db366603ca849a3ed260b710d6 /activemodel/test/cases/translation_test.rb
parent4f6d6f7031a88b647814fc0154e6b69b636dc912 (diff)
downloadrails-e714b499cc1f7ebc84f8d0e96607b79e60f2828d.tar.gz
rails-e714b499cc1f7ebc84f8d0e96607b79e60f2828d.tar.bz2
rails-e714b499cc1f7ebc84f8d0e96607b79e60f2828d.zip
Move validator, human_name and human_attribute_name to ActiveModel, remove deprecated error messages and add i18n_scope and lookup_ancestors.
Signed-off-by: Carl Lerche <carllerche@mac.com>
Diffstat (limited to 'activemodel/test/cases/translation_test.rb')
-rw-r--r--activemodel/test/cases/translation_test.rb51
1 files changed, 51 insertions, 0 deletions
diff --git a/activemodel/test/cases/translation_test.rb b/activemodel/test/cases/translation_test.rb
new file mode 100644
index 0000000000..d171784963
--- /dev/null
+++ b/activemodel/test/cases/translation_test.rb
@@ -0,0 +1,51 @@
+require 'cases/helper'
+
+class SuperUser
+ extend ActiveModel::Translation
+end
+
+class User < SuperUser
+end
+
+class ActiveModelI18nTests < ActiveModel::TestCase
+
+ def setup
+ I18n.backend = I18n::Backend::Simple.new
+ end
+
+ def test_translated_model_attributes
+ I18n.backend.store_translations 'en', :activemodel => {:attributes => {:super_user => {:name => 'super_user name attribute'} } }
+ assert_equal 'super_user name attribute', SuperUser.human_attribute_name('name')
+ end
+
+ def test_translated_model_attributes_with_symbols
+ I18n.backend.store_translations 'en', :activemodel => {:attributes => {:super_user => {:name => 'super_user name attribute'} } }
+ assert_equal 'super_user name attribute', SuperUser.human_attribute_name(:name)
+ end
+
+ def test_translated_model_attributes_with_ancestor
+ I18n.backend.store_translations 'en', :activemodel => {:attributes => {:user => {:name => 'user name attribute'} } }
+ assert_equal 'user name attribute', User.human_attribute_name('name')
+ end
+
+ def test_translated_model_attributes_with_ancestors_fallback
+ I18n.backend.store_translations 'en', :activemodel => {:attributes => {:super_user => {:name => 'super_user name attribute'} } }
+ assert_equal 'super_user name attribute', User.human_attribute_name('name')
+ end
+
+ def test_translated_model_names
+ I18n.backend.store_translations 'en', :activemodel => {:models => {:super_user => 'super_user model'} }
+ assert_equal 'super_user model', SuperUser.model_name.human
+ end
+
+ def test_translated_model_names_with_sti
+ I18n.backend.store_translations 'en', :activemodel => {:models => {:user => 'user model'} }
+ assert_equal 'user model', User.model_name.human
+ end
+
+ def test_translated_model_names_with_ancestors_fallback
+ I18n.backend.store_translations 'en', :activemodel => {:models => {:super_user => 'super_user model'} }
+ assert_equal 'super_user model', User.model_name.human
+ end
+end
+