From 2644bcec7dbe3a65277b3a6a141853484171535a Mon Sep 17 00:00:00 2001 From: Aaron Patterson Date: Fri, 25 Feb 2011 15:23:21 -0800 Subject: assinging nil to an offset will remove the offset from the AST --- test/test_select_manager.rb | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'test') diff --git a/test/test_select_manager.rb b/test/test_select_manager.rb index efea44d56f..2fe43aa982 100644 --- a/test/test_select_manager.rb +++ b/test/test_select_manager.rb @@ -180,6 +180,32 @@ module Arel end end + describe 'offset' do + it 'should add an offset' do + table = Table.new :users + mgr = table.from table + mgr.offset = 10 + mgr.to_sql.must_be_like %{ SELECT FROM "users" OFFSET 10 } + end + + it 'should remove an offset' do + table = Table.new :users + mgr = table.from table + mgr.offset = 10 + mgr.to_sql.must_be_like %{ SELECT FROM "users" OFFSET 10 } + + mgr.offset = nil + mgr.to_sql.must_be_like %{ SELECT FROM "users" } + end + + it 'should return the offset' do + table = Table.new :users + mgr = table.from table + mgr.offset = 10 + assert_equal 10, mgr.offset + end + end + describe 'exists' do it 'should create an exists clause' do table = Table.new(:users) -- cgit v1.2.3