Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

stop using deprecated AND usage

  • Loading branch information...
commit 6be1a71464f1e6833330b6cf9e239fd21b54c625 1 parent 11e29a3
@tenderlove tenderlove authored
View
6 lib/arel/predications.rb
@@ -36,9 +36,9 @@ def in other
if other.exclude_end?
left = Nodes::GreaterThanOrEqual.new(self, other.begin)
right = Nodes::LessThan.new(self, other.end)
- Nodes::And.new left, right
+ Nodes::And.new [left, right]
else
- Nodes::Between.new(self, Nodes::And.new(other.begin, other.end))
+ Nodes::Between.new(self, Nodes::And.new([other.begin, other.end]))
end
else
Nodes::In.new self, other
@@ -174,7 +174,7 @@ def grouping_all method_id, others
first = send method_id, others.shift
Nodes::Grouping.new others.inject(first) { |memo,expr|
- Nodes::And.new(memo, send(method_id, expr))
+ Nodes::And.new([memo, send(method_id, expr)])
}
end
end
View
12 test/visitors/test_depth_first.rb
@@ -78,7 +78,6 @@ def test_outer_join
end
[
- Arel::Nodes::And,
Arel::Nodes::Assignment,
Arel::Nodes::Between,
Arel::Nodes::DoesNotMatch,
@@ -106,6 +105,17 @@ def test_outer_join
end
end
+ # N-ary
+ [
+ Arel::Nodes::And,
+ ].each do |klass|
+ define_method("test_#{klass.name.gsub('::', '_')}") do
+ binary = klass.new([:a, :b])
+ @visitor.accept binary
+ assert_equal [:a, :b, binary], @collector.calls
+ end
+ end
+
[
Arel::Attributes::Integer,
Arel::Attributes::Float,
View
4 test/visitors/test_to_sql.rb
@@ -50,7 +50,7 @@ module Visitors
end
it "should apply Not to the whole expression" do
- node = Nodes::And.new @attr.eq(10), @attr.eq(11)
+ node = Nodes::And.new [@attr.eq(10), @attr.eq(11)]
sql = @visitor.accept Nodes::Not.new(node)
sql.must_be_like %{NOT ("users"."id" = 10 AND "users"."id" = 11)}
end
@@ -82,7 +82,7 @@ module Visitors
end
it "should visit_Arel_Nodes_And" do
- node = Nodes::And.new @attr.eq(10), @attr.eq(11)
+ node = Nodes::And.new [@attr.eq(10), @attr.eq(11)]
@visitor.accept(node).must_be_like %{
"users"."id" = 10 AND "users"."id" = 11
}
Please sign in to comment.
Something went wrong with that request. Please try again.