From 0c96169f590b1b5ca9c180b033e7899e322a0f99 Mon Sep 17 00:00:00 2001 From: Jon Rowe Date: Sun, 24 Mar 2013 12:32:11 +1300 Subject: test case to assert that associations do not overwrite after create, fixes #9310 --- activerecord/test/cases/autosave_association_test.rb | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'activerecord/test') diff --git a/activerecord/test/cases/autosave_association_test.rb b/activerecord/test/cases/autosave_association_test.rb index e6b881389b..bba1b2b66d 100644 --- a/activerecord/test/cases/autosave_association_test.rb +++ b/activerecord/test/cases/autosave_association_test.rb @@ -341,6 +341,19 @@ class TestDefaultAutosaveAssociationOnABelongsToAssociation < ActiveRecord::Test assert_equal num_tagging + 1, Tagging.count end + def test_association_is_not_overwitten_on_autosave + firm_1 = Firm.create!(name: 'Apple') + firm_2 = Firm.create!(name: 'Microsoft') + client = Client.create!(firm: firm_1, name: 'Business') + assert_equal firm_1.id, client.client_of + + client.client_of = firm_2.id + assert client.save + + client.reload + assert_equal firm_2, client.firm + end + def test_build_and_then_save_parent_should_not_reload_target client = Client.find(:first) apple = client.build_firm(:name => "Apple") -- cgit v1.2.3