From b0c5508821b5b0044273f3ad5246abe178f5a3f3 Mon Sep 17 00:00:00 2001 From: Ernie Miller Date: Fri, 30 Sep 2011 07:11:05 -0500 Subject: [PATCH] Fix typo and add missing spec coverage. Fixes #65 --- lib/squeel/version.rb | 2 +- lib/squeel/visitors/predicate_visitor.rb | 2 +- spec/squeel/visitors/predicate_visitor_spec.rb | 5 +++++ 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/lib/squeel/version.rb b/lib/squeel/version.rb index a51ca6e..7f775a9 100644 --- a/lib/squeel/version.rb +++ b/lib/squeel/version.rb @@ -1,3 +1,3 @@ module Squeel - VERSION = "0.9.2" + VERSION = "0.9.3" end diff --git a/lib/squeel/visitors/predicate_visitor.rb b/lib/squeel/visitors/predicate_visitor.rb index 7c594d5..41ff04f 100644 --- a/lib/squeel/visitors/predicate_visitor.rb +++ b/lib/squeel/visitors/predicate_visitor.rb @@ -197,7 +197,7 @@ def visit_Squeel_Nodes_Operation(o, parent) when :/ Arel::Nodes::Division.new(args[0], args[1]) else - Arel::Nodes::InfixOperation(o.operator, args[0], args[1]) + Arel::Nodes::InfixOperation.new(o.operator, args[0], args[1]) end o.alias ? op.as(o.alias) : op end diff --git a/spec/squeel/visitors/predicate_visitor_spec.rb b/spec/squeel/visitors/predicate_visitor_spec.rb index a49b2fe..561fe86 100644 --- a/spec/squeel/visitors/predicate_visitor_spec.rb +++ b/spec/squeel/visitors/predicate_visitor_spec.rb @@ -404,6 +404,11 @@ module Visitors operation.should be_a Arel::Nodes::Division end + it 'creates an ARel InfixOperation node for an Operation with a custom operator' do + operation = @v.accept(dsl{id.op(:blah, 1)}) + operation.should be_a Arel::Nodes::InfixOperation + end + it 'sets the alias on an InfixOperation from the Operation alias' do operation = @v.accept(dsl{(id + 1).as(:incremented_id)}) operation.to_sql.should match /incremented_id/