diff options
-rw-r--r-- | lib/arel/visitors/sqlite.rb | 5 | ||||
-rw-r--r-- | test/visitors/test_sqlite.rb | 4 |
2 files changed, 5 insertions, 4 deletions
diff --git a/lib/arel/visitors/sqlite.rb b/lib/arel/visitors/sqlite.rb index 2a509e95b5..ff6fc1fea4 100644 --- a/lib/arel/visitors/sqlite.rb +++ b/lib/arel/visitors/sqlite.rb @@ -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 diff --git a/test/visitors/test_sqlite.rb b/test/visitors/test_sqlite.rb index c06f554ea4..8fb8e76095 100644 --- a/test/visitors/test_sqlite.rb +++ b/test/visitors/test_sqlite.rb @@ -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 |