diff options
author | Aaron Patterson <aaron.patterson@gmail.com> | 2011-03-21 14:58:15 -0700 |
---|---|---|
committer | Aaron Patterson <aaron.patterson@gmail.com> | 2011-03-21 14:58:15 -0700 |
commit | 83d045d2d8881e4310f0f54376a5e04d395f3c7a (patch) | |
tree | a2e88cd0c5d1aa629ac5702225c5ea48b807cb9f /test/visitors | |
parent | 856fd75c9b6defb7711f93e6ecda2932e98c4113 (diff) | |
parent | 05887fc406820f2e8fecc5cedcc42b87cf9f0ab1 (diff) | |
download | rails-83d045d2d8881e4310f0f54376a5e04d395f3c7a.tar.gz rails-83d045d2d8881e4310f0f54376a5e04d395f3c7a.tar.bz2 rails-83d045d2d8881e4310f0f54376a5e04d395f3c7a.zip |
Merge branch 'master' of github.com:rails/arel
* 'master' of github.com:rails/arel:
Make as factory method convert alias name to SqlLiteral
Replace MathOperation with InfixOperation to support more operators
Diffstat (limited to 'test/visitors')
-rw-r--r-- | test/visitors/test_to_sql.rb | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/test/visitors/test_to_sql.rb b/test/visitors/test_to_sql.rb index c47fd57a28..25ff7be3e2 100644 --- a/test/visitors/test_to_sql.rb +++ b/test/visitors/test_to_sql.rb @@ -194,7 +194,7 @@ module Arel end end - describe "Nodes::MathOperation" do + describe "Nodes::InfixOperation" do it "should handle Multiplication" do node = Arel::Attributes::Decimal.new(Table.new(:products), :price) * Arel::Attributes::Decimal.new(Table.new(:currency_rates), :rate) @visitor.accept(node).must_equal %("products"."price" * "currency_rates"."rate") @@ -214,6 +214,15 @@ module Arel node = Arel::Attributes::Decimal.new(Table.new(:products), :price) - 7 @visitor.accept(node).must_equal %(("products"."price" - 7)) end + + it "should handle arbitrary operators" do + node = Arel::Nodes::InfixOperation.new( + '||', + Arel::Attributes::String.new(Table.new(:products), :name), + Arel::Attributes::String.new(Table.new(:products), :name) + ) + @visitor.accept(node).must_equal %("products"."name" || "products"."name") + end end describe "Nodes::NotIn" do |