aboutsummaryrefslogtreecommitdiffstats
path: root/spec
diff options
context:
space:
mode:
authorAaron Patterson <aaron.patterson@gmail.com>2010-09-24 09:41:48 -0700
committerAaron Patterson <aaron.patterson@gmail.com>2010-09-24 09:41:48 -0700
commit487df1771ded1fb065a53ebe9d1a5a9c119478e3 (patch)
treedacefa00fca782bcbd86bd5cf2476226253fc674 /spec
parent7615bd7f928390d0ba9501e5206fd89ce6ce44fc (diff)
downloadrails-487df1771ded1fb065a53ebe9d1a5a9c119478e3.tar.gz
rails-487df1771ded1fb065a53ebe9d1a5a9c119478e3.tar.bz2
rails-487df1771ded1fb065a53ebe9d1a5a9c119478e3.zip
adding an oracle visitor
Diffstat (limited to 'spec')
-rw-r--r--spec/arel/select_manager_spec.rb4
-rw-r--r--spec/arel/visitors/oracle_spec.rb22
2 files changed, 26 insertions, 0 deletions
diff --git a/spec/arel/select_manager_spec.rb b/spec/arel/select_manager_spec.rb
index f301e3afd0..7002d937a2 100644
--- a/spec/arel/select_manager_spec.rb
+++ b/spec/arel/select_manager_spec.rb
@@ -15,6 +15,10 @@ module Arel
@config = { :adapter => 'sqlite3' }
end
+ def with_connection
+ yield self
+ end
+
def connection
self
end
diff --git a/spec/arel/visitors/oracle_spec.rb b/spec/arel/visitors/oracle_spec.rb
new file mode 100644
index 0000000000..384725b788
--- /dev/null
+++ b/spec/arel/visitors/oracle_spec.rb
@@ -0,0 +1,22 @@
+require 'spec_helper'
+
+module Arel
+ module Visitors
+ describe 'the oracle visitor' do
+ before do
+ @visitor = Oracle.new Table.engine
+ end
+
+ describe 'Nodes::SelectStatement' do
+ describe 'limit' do
+ it 'adds a rownum clause' do
+ stmt = Nodes::SelectStatement.new
+ stmt.limit = 10
+ sql = @visitor.accept stmt
+ sql.should be_like %{ SELECT WHERE ROWNUM <= 10 }
+ end
+ end
+ end
+ end
+ end
+end