Permalink
Browse files

Merge pull request #8913 from seejee/regression_test_for_chained_prel…

…oaded_scopes

Added test case to prevent regression of chained, preloaded scopes.
  • Loading branch information...
carlosantoniodasilva committed Jan 21, 2013
2 parents 9a7411a + 7f6872e commit 2e8b3d5c9a7725911ee16d62b9f72edbaea87adb
Showing with 10 additions and 0 deletions.
  1. +7 −0 activerecord/test/cases/relations_test.rb
  2. +3 −0 activerecord/test/models/post.rb
@@ -404,6 +404,13 @@ def test_find_with_preloaded_associations
end
end
+ def test_preload_applies_to_all_chained_preloaded_scopes
+ assert_queries(3) do
+ post = Post.with_comments.with_tags.first
+ assert post
+ end
+ end
+
def test_find_with_included_associations
assert_queries(2) do
posts = Post.includes(:comments).order('posts.id')
@@ -35,6 +35,9 @@ def first_comment
scope :with_very_special_comments, -> { joins(:comments).where(:comments => {:type => 'VerySpecialComment'}) }
scope :with_post, ->(post_id) { joins(:comments).where(:comments => { :post_id => post_id }) }
+ scope :with_comments, -> { preload(:comments) }
+ scope :with_tags, -> { preload(:taggings) }
+
has_many :comments do
def find_most_recent
order("id DESC").first

0 comments on commit 2e8b3d5

Please sign in to comment.