From b6a2baee830f464344b7cb82caaa528be1db7389 Mon Sep 17 00:00:00 2001
From: George Brocklehurst <george.brocklehurst@gmail.com>
Date: Thu, 25 Oct 2012 23:48:22 +0200
Subject: Test/changelog for has_many bug on unsaved records

See issue #7950.

The previous commit fixes this bug, and is a backport of
4bc2ae0da1dd812aee759f6d13ad428354cd0e13.
---
 activerecord/test/cases/associations/has_many_associations_test.rb | 7 +++++++
 1 file changed, 7 insertions(+)

(limited to 'activerecord/test')

diff --git a/activerecord/test/cases/associations/has_many_associations_test.rb b/activerecord/test/cases/associations/has_many_associations_test.rb
index ed4475770b..c311bf70d2 100644
--- a/activerecord/test/cases/associations/has_many_associations_test.rb
+++ b/activerecord/test/cases/associations/has_many_associations_test.rb
@@ -1225,6 +1225,13 @@ class HasManyAssociationsTest < ActiveRecord::TestCase
     assert companies(:first_firm).clients.include?(Client.find(2))
   end
 
+  def test_included_in_collection_for_new_records
+    client = Client.create(:name => 'Persisted')
+    assert_nil client.client_of
+    assert !Firm.new.clients_of_firm.include?(client),
+           'includes a client that does not belong to any firm'
+  end
+
   def test_adding_array_and_collection
     assert_nothing_raised { Firm.find(:first).clients + Firm.find(:all).last.clients }
   end
-- 
cgit v1.2.3