diff options
author | Jamis Buck <jamis@37signals.com> | 2005-10-13 19:21:45 +0000 |
---|---|---|
committer | Jamis Buck <jamis@37signals.com> | 2005-10-13 19:21:45 +0000 |
commit | 99f3ae08450ecfd7574336837a75c7fd0dd17305 (patch) | |
tree | 772950a2a833e41301f1e410f7a2d1fc21b35ff6 /activerecord/test | |
parent | 2f9a19cb834b5d44ccb28b87b979266820864dd1 (diff) | |
download | rails-99f3ae08450ecfd7574336837a75c7fd0dd17305.tar.gz rails-99f3ae08450ecfd7574336837a75c7fd0dd17305.tar.bz2 rails-99f3ae08450ecfd7574336837a75c7fd0dd17305.zip |
Fix errors caused by assigning a has-one or belongs-to property to itself
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2562 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'activerecord/test')
-rwxr-xr-x | activerecord/test/associations_test.rb | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/activerecord/test/associations_test.rb b/activerecord/test/associations_test.rb index af4251284d..fc8d59e862 100755 --- a/activerecord/test/associations_test.rb +++ b/activerecord/test/associations_test.rb @@ -72,6 +72,11 @@ class HasOneAssociationsTest < Test::Unit::TestCase assert_equal Account.find(1).credit_limit, companies(:first_firm).account.credit_limit end + def test_proxy_assignment + company = companies(:first_firm) + assert_nothing_raised { company.account = company.account } + end + def test_triple_equality assert Account === companies(:first_firm).account end @@ -692,6 +697,11 @@ class BelongsToAssociationsTest < Test::Unit::TestCase assert !Client.find(3).firm.nil?, "Microsoft should have a firm" end + def test_proxy_assignment + account = Account.find(1) + assert_nothing_raised { account.firm = account.firm } + end + def test_type_mismatch assert_raise(ActiveRecord::AssociationTypeMismatch) { Account.find(1).firm = 1 } assert_raise(ActiveRecord::AssociationTypeMismatch) { Account.find(1).firm = Project.find(1) } |