1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00

Merge pull request #50 from ernie/operation_ordering.

InfixOperations should support ordering
This commit is contained in:
Aaron Patterson 2011-05-02 08:38:21 -07:00
commit a3d9c393b4
2 changed files with 31 additions and 0 deletions

View file

@ -4,6 +4,7 @@ module Arel
class InfixOperation < Binary
include Arel::Expressions
include Arel::Predications
include Arel::OrderPredications
include Arel::AliasPredication
include Arel::Math

View file

@ -0,0 +1,30 @@
require 'helper'
module Arel
module Nodes
class TestInfixOperation < MiniTest::Unit::TestCase
def test_construct
operation = InfixOperation.new :+, 1, 2
assert_equal :+, operation.operator
assert_equal 1, operation.left
assert_equal 2, operation.right
end
def test_operation_alias
operation = InfixOperation.new :+, 1, 2
aliaz = operation.as('zomg')
assert_kind_of As, aliaz
assert_equal operation, aliaz.left
assert_equal 'zomg', aliaz.right
end
def test_opertaion_ordering
operation = InfixOperation.new :+, 1, 2
ordering = operation.desc
assert_kind_of Ordering, ordering
assert_equal operation, ordering.expr
assert_equal :desc, ordering.direction
end
end
end
end