diff options
author | Jon Leighton <j@jonathanleighton.com> | 2011-07-12 00:04:01 +0100 |
---|---|---|
committer | Jon Leighton <j@jonathanleighton.com> | 2011-07-12 00:14:45 +0100 |
commit | 1712d90050bd4b32a9ee93548b5eef05a69491f7 (patch) | |
tree | cf76c0d1847f96d8f71c30f10c741d46dbe6f4b1 /activerecord/test/cases | |
parent | 5c8be9eb864886d7ba9abba0d59786614cca2a5a (diff) | |
download | rails-1712d90050bd4b32a9ee93548b5eef05a69491f7.tar.gz rails-1712d90050bd4b32a9ee93548b5eef05a69491f7.tar.bz2 rails-1712d90050bd4b32a9ee93548b5eef05a69491f7.zip |
Fix exception if old and new targets are both nil. Fixes #1471.
Diffstat (limited to 'activerecord/test/cases')
-rw-r--r-- | activerecord/test/cases/associations/belongs_to_associations_test.rb | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/activerecord/test/cases/associations/belongs_to_associations_test.rb b/activerecord/test/cases/associations/belongs_to_associations_test.rb index 4190f6d76d..818902beb5 100644 --- a/activerecord/test/cases/associations/belongs_to_associations_test.rb +++ b/activerecord/test/cases/associations/belongs_to_associations_test.rb @@ -681,4 +681,13 @@ class BelongsToAssociationsTest < ActiveRecord::TestCase firm = client.create_firm! :name => "baa" assert_equal firm.id, client.client_of end + + def test_self_referential_belongs_to_with_counter_cache_assigning_nil + comment = Comment.create! :post => posts(:thinking), :body => "fuu" + comment.parent = nil + comment.save! + + assert_equal nil, comment.reload.parent + assert_equal 0, comments(:greetings).reload.children_count + end end |