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

fix sqlite visitor

This commit is contained in:
Aaron Patterson 2014-04-08 17:04:08 -07:00
parent a6a7c75ff4
commit 93036b168b
2 changed files with 5 additions and 4 deletions

View file

@ -4,10 +4,11 @@ module Arel
private
# Locks are not supported in SQLite
def visit_Arel_Nodes_Lock o
def visit_Arel_Nodes_Lock o, collector
collector
end
def visit_Arel_Nodes_SelectStatement o
def visit_Arel_Nodes_SelectStatement o, collector
o.limit = Arel::Nodes::Limit.new(-1) if o.offset && !o.limit
super
end

View file

@ -10,13 +10,13 @@ module Arel
it 'defaults limit to -1' do
stmt = Nodes::SelectStatement.new
stmt.offset = Nodes::Offset.new(1)
sql = @visitor.accept(stmt)
sql = @visitor.accept(stmt, Collectors::SQLString.new).value
sql.must_be_like "SELECT LIMIT -1 OFFSET 1"
end
it 'does not support locking' do
node = Nodes::Lock.new(Arel.sql('FOR UPDATE'))
@visitor.accept(node).must_be_nil
assert_equal '', @visitor.accept(node, Collectors::SQLString.new).value
end
end
end