test/visitors/test_oracle.rb in arel-2.0.2 vs test/visitors/test_oracle.rb in arel-2.0.3
- old
+ new
@@ -41,9 +41,21 @@
sql.must_be_like %{
SELECT #{select} ORDER BY alias_0__, alias_1__
}
end
+ it 'splits orders with commas and function calls' do
+ # *sigh*
+ select = "DISTINCT foo.id, FIRST_VALUE(projects.name) OVER (foo) AS alias_0__"
+ stmt = Nodes::SelectStatement.new
+ stmt.cores.first.projections << Nodes::SqlLiteral.new(select)
+ stmt.orders << Nodes::SqlLiteral.new('NVL(LOWER(bar, foo), foo) DESC, UPPER(baz)')
+ sql = @visitor.accept(stmt)
+ sql.must_be_like %{
+ SELECT #{select} ORDER BY alias_0__ DESC, alias_1__
+ }
+ end
+
describe 'Nodes::SelectStatement' do
describe 'limit' do
it 'adds a rownum clause' do
stmt = Nodes::SelectStatement.new
stmt.limit = 10