From 8e3e04f47dd356ec6a0adba32a440ce388767faa Mon Sep 17 00:00:00 2001 From: Kazuki Hasegawa Date: Thu, 3 Apr 2014 12:38:26 +0900 Subject: flatten object.children in visit_Arel_Node_And --- lib/arel/visitors/to_sql.rb | 2 +- test/visitors/test_to_sql.rb | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/arel/visitors/to_sql.rb b/lib/arel/visitors/to_sql.rb index 84a88e1899..2d81022a7a 100644 --- a/lib/arel/visitors/to_sql.rb +++ b/lib/arel/visitors/to_sql.rb @@ -500,7 +500,7 @@ module Arel end def visit_Arel_Nodes_And o - o.children.map { |x| visit x}.join ' AND ' + o.children.flatten.map { |x| visit x}.join ' AND ' end def visit_Arel_Nodes_Or o diff --git a/test/visitors/test_to_sql.rb b/test/visitors/test_to_sql.rb index b142ecd695..0a7af91397 100644 --- a/test/visitors/test_to_sql.rb +++ b/test/visitors/test_to_sql.rb @@ -237,9 +237,9 @@ module Arel 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), @attr.eq(12)]] @visitor.accept(node).must_be_like %{ - "users"."id" = 10 AND "users"."id" = 11 + "users"."id" = 10 AND "users"."id" = 11 AND "users"."id" = 12 } end -- cgit v1.2.3