aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases
diff options
context:
space:
mode:
authorAlireza Bashiri <azbshiri@gmail.com>2018-07-27 11:20:45 +0430
committerAlireza Bashiri <azbshiri@gmail.com>2018-08-02 08:27:03 +0430
commitdc16cdd89a93817203e7c8a49af174fde81402e0 (patch)
tree249f5b7b45cabe0aed07046f21373acc58d397c5 /activerecord/test/cases
parent67fa1ad0c3b811aa527ec748e14d95dee2db9f69 (diff)
downloadrails-dc16cdd89a93817203e7c8a49af174fde81402e0.tar.gz
rails-dc16cdd89a93817203e7c8a49af174fde81402e0.tar.bz2
rails-dc16cdd89a93817203e7c8a49af174fde81402e0.zip
Call build when extend with nested attributes defined
What? From now on when `accepts_nested_attributes_for` defined and `extend` option added the overwritten `build` method being called. [Alireza Bashiri, Martins Polakovs]
Diffstat (limited to 'activerecord/test/cases')
-rw-r--r--activerecord/test/cases/nested_attributes_test.rb12
1 files changed, 12 insertions, 0 deletions
diff --git a/activerecord/test/cases/nested_attributes_test.rb b/activerecord/test/cases/nested_attributes_test.rb
index ec01a2965d..aa519fd332 100644
--- a/activerecord/test/cases/nested_attributes_test.rb
+++ b/activerecord/test/cases/nested_attributes_test.rb
@@ -1094,3 +1094,15 @@ class TestHasManyAutosaveAssociationWhichItselfHasAutosaveAssociations < ActiveR
assert_equal ["Ship name can't be blank"], part.errors.full_messages
end
end
+
+class TestNestedAttributesWithExtend < ActiveRecord::TestCase
+ setup do
+ Pirate.accepts_nested_attributes_for :treasures
+ end
+
+ def test_extend_affects_nested_attributes
+ pirate = Pirate.create!(catchphrase: "Don' botharrr talkin' like one, savvy?")
+ pirate.treasures_attributes = [{ id: nil }]
+ assert_equal "from extension", pirate.treasures[0].name
+ end
+end