aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases
diff options
context:
space:
mode:
authorEdo Balvers <i@edo.me>2013-08-09 12:58:46 +0200
committerEdo Balvers <i@edo.me>2013-10-08 16:41:53 +0200
commit7cab255a97fceb48e3b59b3d39b5fe58c6dad54b (patch)
tree80f9f2389016da0f9e10f036ae78b4883ea2f462 /activerecord/test/cases
parentd2d6e4a980800cefce4066724ddd541ae22730c1 (diff)
downloadrails-7cab255a97fceb48e3b59b3d39b5fe58c6dad54b.tar.gz
rails-7cab255a97fceb48e3b59b3d39b5fe58c6dad54b.tar.bz2
rails-7cab255a97fceb48e3b59b3d39b5fe58c6dad54b.zip
Fixes #11773 when using includes combined with select, the select statement was overwritten.
Diffstat (limited to 'activerecord/test/cases')
-rw-r--r--activerecord/test/cases/relations_test.rb8
1 files changed, 8 insertions, 0 deletions
diff --git a/activerecord/test/cases/relations_test.rb b/activerecord/test/cases/relations_test.rb
index f814947ab2..396d4ef1e9 100644
--- a/activerecord/test/cases/relations_test.rb
+++ b/activerecord/test/cases/relations_test.rb
@@ -486,6 +486,14 @@ class RelationTest < ActiveRecord::TestCase
assert_equal Developer.where(name: 'David').map(&:id).sort, developers
end
+ def test_includes_with_select
+ query = Post.select('comments_count AS ranking').order('ranking').includes(:comments)
+ .where(comments: { id: 1 })
+
+ assert_equal ['comments_count AS ranking'], query.select_values
+ assert_equal 1, query.to_a.size
+ end
+
def test_loading_with_one_association
posts = Post.preload(:comments)
post = posts.find { |p| p.id == 1 }