From d6110799c2573080897410f9836f5aa623b197ea Mon Sep 17 00:00:00 2001 From: Sean Griffin Date: Sun, 25 Jan 2015 17:30:42 -0700 Subject: Move `where_unscoping` logic over to `WhereClause` --- activerecord/test/cases/relation/where_clause_test.rb | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'activerecord/test/cases/relation') diff --git a/activerecord/test/cases/relation/where_clause_test.rb b/activerecord/test/cases/relation/where_clause_test.rb index 569082541b..6864be2608 100644 --- a/activerecord/test/cases/relation/where_clause_test.rb +++ b/activerecord/test/cases/relation/where_clause_test.rb @@ -97,6 +97,20 @@ class ActiveRecord::Relation assert_equal expected, original.invert end + test "accept removes binary predicates referencing a given column" do + where_clause = WhereClause.new([ + table["id"].in([1, 2, 3]), + table["name"].eq(bind_param), + table["age"].gteq(bind_param), + ], [ + [column("name"), "Sean"], + [column("age"), 30], + ]) + expected = WhereClause.new([table["age"].gteq(bind_param)], [[column("age"), 30]]) + + assert_equal expected, where_clause.except("id", "name") + end + private def table -- cgit v1.2.3