diff options
author | Rafael Mendonça França <rafaelmfranca@gmail.com> | 2015-01-02 14:29:07 -0300 |
---|---|---|
committer | Rafael Mendonça França <rafaelmfranca@gmail.com> | 2015-01-02 14:29:07 -0300 |
commit | ecdae459d209ae5144fd4390e8a6f247d7f98a1c (patch) | |
tree | 63541ab762c7e1d7d9611ab60d7a248bc8360c4b /activerecord/test | |
parent | 2d743b528cf8ee2a8dc016a5dd0d54bf7cbc34e4 (diff) | |
parent | 1e0130f7e0a27878dd78ed1335ae8e6fbc52397f (diff) | |
download | rails-ecdae459d209ae5144fd4390e8a6f247d7f98a1c.tar.gz rails-ecdae459d209ae5144fd4390e8a6f247d7f98a1c.tar.bz2 rails-ecdae459d209ae5144fd4390e8a6f247d7f98a1c.zip |
Merge pull request #15309 from iantropov/issue_12698_build_through
Add setting of FK for throgh associations while building
Conflicts:
activerecord/CHANGELOG.md
activerecord/test/cases/associations/has_many_through_associations_test.rb
Diffstat (limited to 'activerecord/test')
-rw-r--r-- | activerecord/test/cases/associations/has_many_through_associations_test.rb | 11 | ||||
-rw-r--r-- | activerecord/test/models/organization.rb | 2 |
2 files changed, 12 insertions, 1 deletions
diff --git a/activerecord/test/cases/associations/has_many_through_associations_test.rb b/activerecord/test/cases/associations/has_many_through_associations_test.rb index 589a232bdb..6729a5a9fc 100644 --- a/activerecord/test/cases/associations/has_many_through_associations_test.rb +++ b/activerecord/test/cases/associations/has_many_through_associations_test.rb @@ -25,12 +25,13 @@ require 'models/categorization' require 'models/member' require 'models/membership' require 'models/club' +require 'models/organization' class HasManyThroughAssociationsTest < ActiveRecord::TestCase fixtures :posts, :readers, :people, :comments, :authors, :categories, :taggings, :tags, :owners, :pets, :toys, :jobs, :references, :companies, :members, :author_addresses, :subscribers, :books, :subscriptions, :developers, :categorizations, :essays, - :categories_posts, :clubs, :memberships + :categories_posts, :clubs, :memberships, :organizations # Dummies to force column loads so query counts are clean. def setup @@ -1151,4 +1152,12 @@ class HasManyThroughAssociationsTest < ActiveRecord::TestCase club.members << member assert_equal 1, SuperMembership.where(member_id: member.id, club_id: club.id).count end + + def test_build_for_has_many_through_association + organization = organizations(:nsa) + author = organization.author + post_direct = author.posts.build + post_through = organization.posts.build + assert_equal post_direct.author_id, post_through.author_id + end end diff --git a/activerecord/test/models/organization.rb b/activerecord/test/models/organization.rb index 72e7bade68..f3e92f3067 100644 --- a/activerecord/test/models/organization.rb +++ b/activerecord/test/models/organization.rb @@ -8,5 +8,7 @@ class Organization < ActiveRecord::Base has_one :author, :primary_key => :name has_one :author_owned_essay_category, :through => :author, :source => :owned_essay_category + has_many :posts, :through => :author, :source => :posts + scope :clubs, -> { from('clubs') } end |