diff options
author | Brian Cardarella <bcardarella@gmail.com> | 2012-04-24 01:05:41 -0400 |
---|---|---|
committer | Brian Cardarella <bcardarella@gmail.com> | 2012-04-24 01:05:41 -0400 |
commit | 4433b1a99afa904884927d6787a1baf162b14f2e (patch) | |
tree | 06c1ac4ec3e58a6436704e864d322141809ef4d7 /activemodel/test | |
parent | 3a749a9bd1bf5007c6c7a5e74332865d6b465ed7 (diff) | |
download | rails-4433b1a99afa904884927d6787a1baf162b14f2e.tar.gz rails-4433b1a99afa904884927d6787a1baf162b14f2e.tar.bz2 rails-4433b1a99afa904884927d6787a1baf162b14f2e.zip |
Support i18n attributes for confirmation
Diffstat (limited to 'activemodel/test')
-rw-r--r-- | activemodel/test/cases/validations/confirmation_validation_test.rb | 21 | ||||
-rw-r--r-- | activemodel/test/cases/validations/i18n_validation_test.rb | 2 |
2 files changed, 21 insertions, 2 deletions
diff --git a/activemodel/test/cases/validations/confirmation_validation_test.rb b/activemodel/test/cases/validations/confirmation_validation_test.rb index 9ed00672ed..f7556a249f 100644 --- a/activemodel/test/cases/validations/confirmation_validation_test.rb +++ b/activemodel/test/cases/validations/confirmation_validation_test.rb @@ -44,7 +44,7 @@ class ConfirmationValidationTest < ActiveModel::TestCase p.karma_confirmation = "None" assert p.invalid? - assert_equal ["doesn't match karma"], p.errors[:karma_confirmation] + assert_equal ["doesn't match Karma"], p.errors[:karma_confirmation] p.karma = "None" assert p.valid? @@ -52,4 +52,23 @@ class ConfirmationValidationTest < ActiveModel::TestCase Person.reset_callbacks(:validate) end + def test_title_confirmation_with_i18n_attribute + @old_load_path, @old_backend = I18n.load_path.dup, I18n.backend + I18n.load_path.clear + I18n.backend = I18n::Backend::Simple.new + I18n.backend.store_translations('en', { + :errors => {:messages => {:confirmation => "doesn't match %{attribute}"}}, + :activemodel => {:attributes => {:topic => {:title => 'Test Title'}}} + }) + + Topic.validates_confirmation_of(:title) + + t = Topic.new("title" => "We should be confirmed","title_confirmation" => "") + assert t.invalid? + assert_equal ["doesn't match Test Title"], t.errors[:title_confirmation] + + I18n.load_path.replace @old_load_path + I18n.backend = @old_backend + end + end diff --git a/activemodel/test/cases/validations/i18n_validation_test.rb b/activemodel/test/cases/validations/i18n_validation_test.rb index dec2065c90..6b6aad3bd1 100644 --- a/activemodel/test/cases/validations/i18n_validation_test.rb +++ b/activemodel/test/cases/validations/i18n_validation_test.rb @@ -81,7 +81,7 @@ class I18nValidationTest < ActiveModel::TestCase test "validates_confirmation_of on generated message #{name}" do Person.validates_confirmation_of :title, validation_options @person.title_confirmation = 'foo' - @person.errors.expects(:generate_message).with(:title_confirmation, :confirmation, generate_message_options.merge(:attribute => :title)) + @person.errors.expects(:generate_message).with(:title_confirmation, :confirmation, generate_message_options.merge(:attribute => 'Title')) @person.valid? end end |