aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases
diff options
context:
space:
mode:
authorbrainopia <brainopia@evilmartians.com>2015-01-06 02:25:19 +0300
committerbrainopia <brainopia@evilmartians.com>2015-01-06 02:29:03 +0300
commit42e386173f888c5762130db8db132bc33d739e4f (patch)
tree1471f20e0bee2a52d937d5a8fbc6f5ff016c4aa2 /activerecord/test/cases
parent1c8192669fd6880041f87ba8ee2aae52b1f7edd8 (diff)
downloadrails-42e386173f888c5762130db8db132bc33d739e4f.tar.gz
rails-42e386173f888c5762130db8db132bc33d739e4f.tar.bz2
rails-42e386173f888c5762130db8db132bc33d739e4f.zip
Correctly fetch bind_values from join in subquery
Diffstat (limited to 'activerecord/test/cases')
-rw-r--r--activerecord/test/cases/bind_parameter_test.rb10
1 files changed, 9 insertions, 1 deletions
diff --git a/activerecord/test/cases/bind_parameter_test.rb b/activerecord/test/cases/bind_parameter_test.rb
index c4634d11e2..66663b3e0e 100644
--- a/activerecord/test/cases/bind_parameter_test.rb
+++ b/activerecord/test/cases/bind_parameter_test.rb
@@ -1,9 +1,11 @@
require 'cases/helper'
require 'models/topic'
+require 'models/author'
+require 'models/post'
module ActiveRecord
class BindParameterTest < ActiveRecord::TestCase
- fixtures :topics
+ fixtures :topics, :authors, :posts
class LogListener
attr_accessor :calls
@@ -30,6 +32,12 @@ module ActiveRecord
end
if ActiveRecord::Base.connection.supports_statement_cache?
+ def test_bind_from_join_in_subquery
+ subquery = Author.joins(:thinking_posts).where(name: 'David')
+ scope = Author.from(subquery, 'authors').where(id: 1)
+ assert_equal 1, scope.count
+ end
+
def test_binds_are_logged
sub = @connection.substitute_at(@pk)
binds = [[@pk, 1]]