aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases
diff options
context:
space:
mode:
authorErnie Miller <ernie@erniemiller.org>2013-07-14 13:53:38 -0400
committerErnie Miller <ernie@erniemiller.org>2013-07-14 13:53:38 -0400
commite2d82508148fc4e3d507f70ed236414a75c58672 (patch)
tree264d32e6001da1a93cbcdcf8164c3ea17ebb7ada /activerecord/test/cases
parent9fbdd9d83e8e2775845cbc581e0c357f99d292e4 (diff)
downloadrails-e2d82508148fc4e3d507f70ed236414a75c58672.tar.gz
rails-e2d82508148fc4e3d507f70ed236414a75c58672.tar.bz2
rails-e2d82508148fc4e3d507f70ed236414a75c58672.zip
Blacklist->whitelist for reference scans in order!
Stop special-casing Arel::Nodes as exempt from reference scanning in order. Instead, only scan order values that are strings for a table reference.
Diffstat (limited to 'activerecord/test/cases')
-rw-r--r--activerecord/test/cases/relation_test.rb7
1 files changed, 7 insertions, 0 deletions
diff --git a/activerecord/test/cases/relation_test.rb b/activerecord/test/cases/relation_test.rb
index 693b36f35c..c92a20bec3 100644
--- a/activerecord/test/cases/relation_test.rb
+++ b/activerecord/test/cases/relation_test.rb
@@ -227,6 +227,13 @@ module ActiveRecord
assert_equal ['"posts".name ASC'], relation.order_values
end
+ test "#order! on non-string does not attempt regexp match for references" do
+ obj = Object.new
+ obj.expects(:=~).never
+ assert relation.order!(obj)
+ assert_equal [obj], relation.order_values
+ end
+
test '#references!' do
assert relation.references!(:foo).equal?(relation)
assert relation.references_values.include?('foo')