diff options
author | Aaron Patterson <aaron.patterson@gmail.com> | 2012-02-01 11:07:05 -0800 |
---|---|---|
committer | Aaron Patterson <aaron.patterson@gmail.com> | 2012-02-01 11:07:05 -0800 |
commit | 33d8b62c527b16851db7d7ea79f1269db325d1aa (patch) | |
tree | 7debae34d185fa9beb3780af391402f993853771 /activerecord/test/cases | |
parent | 403cce77f19bc6c2a3d8acaf547991078a540eaf (diff) | |
parent | e778e22812893c5ac09634ace83a4af168d66a3b (diff) | |
download | rails-33d8b62c527b16851db7d7ea79f1269db325d1aa.tar.gz rails-33d8b62c527b16851db7d7ea79f1269db325d1aa.tar.bz2 rails-33d8b62c527b16851db7d7ea79f1269db325d1aa.zip |
Merge pull request #4829 from rafaelfranca/restrict-fix
Use human attribute name to show the dependent destroy message
Diffstat (limited to 'activerecord/test/cases')
-rw-r--r-- | activerecord/test/cases/associations/has_one_associations_test.rb | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/activerecord/test/cases/associations/has_one_associations_test.rb b/activerecord/test/cases/associations/has_one_associations_test.rb index c2548e33c5..331358bd61 100644 --- a/activerecord/test/cases/associations/has_one_associations_test.rb +++ b/activerecord/test/cases/associations/has_one_associations_test.rb @@ -184,13 +184,37 @@ class HasOneAssociationsTest < ActiveRecord::TestCase firm.destroy assert !firm.errors.empty? - assert_equal "Cannot delete record because a dependent account exists", firm.errors[:base].first + assert_equal "Cannot delete record because a dependent account exist", firm.errors[:base].first assert RestrictedFirm.exists?(:name => 'restrict') assert firm.account.present? ensure ActiveRecord::Base.dependent_restrict_raises = option_before end + def test_dependence_with_restrict_with_dependent_restrict_raises_config_set_to_false_and_attribute_name + old_backend = I18n.backend + I18n.backend = I18n::Backend::Simple.new + I18n.backend.store_translations 'en', :activerecord => {:attributes => {:restricted_firm => {:account => "account model"}}} + + option_before = ActiveRecord::Base.dependent_restrict_raises + ActiveRecord::Base.dependent_restrict_raises = false + + firm = RestrictedFirm.create!(:name => 'restrict') + firm.create_account(:credit_limit => 10) + + assert_not_nil firm.account + + firm.destroy + + assert !firm.errors.empty? + assert_equal "Cannot delete record because a dependent account model exist", firm.errors[:base].first + assert RestrictedFirm.exists?(:name => 'restrict') + assert firm.account.present? + ensure + ActiveRecord::Base.dependent_restrict_raises = option_before + I18n.backend = old_backend + end + def test_successful_build_association firm = Firm.new("name" => "GlobalMegaCorp") firm.save |