diff options
-rw-r--r-- | lib/arel.rb | 3 | ||||
-rw-r--r-- | spec/arel/unit/relations/insert_spec.rb | 22 | ||||
-rw-r--r-- | spec/doubles/database.rb | 2 |
3 files changed, 13 insertions, 14 deletions
diff --git a/lib/arel.rb b/lib/arel.rb index f56005c2ed..00bfa1e292 100644 --- a/lib/arel.rb +++ b/lib/arel.rb @@ -3,6 +3,7 @@ $LOAD_PATH.unshift(File.dirname(__FILE__)) require 'rubygems' require 'activesupport' require 'activerecord' +require 'active_record/connection_adapters/abstract/quoting' require 'arel/arel' require 'arel/extensions' @@ -11,4 +12,4 @@ require 'arel/predicates' require 'arel/relations' require 'arel/engine' require 'arel/session' -require 'arel/primitives'
\ No newline at end of file +require 'arel/primitives' diff --git a/spec/arel/unit/relations/insert_spec.rb b/spec/arel/unit/relations/insert_spec.rb index b983e545a4..4ef51fef9d 100644 --- a/spec/arel/unit/relations/insert_spec.rb +++ b/spec/arel/unit/relations/insert_spec.rb @@ -5,34 +5,34 @@ module Arel before do @relation = Table.new(:users) end - + describe '#to_sql' do it 'manufactures sql inserting data when given multiple rows' do pending 'it should insert multiple rows' @insertion = Insert.new(@relation, [@relation[:name] => "nick", @relation[:name] => "bryan"]) - + @insertion.to_sql.should be_like(" INSERT INTO `users` (`users`.`name`) VALUES ('nick'), ('bryan') ") end - + it 'manufactures sql inserting data when given multiple values' do @insertion = Insert.new(@relation, @relation[:id] => "1", @relation[:name] => "nick") - + @insertion.to_sql.should be_like(" INSERT INTO `users` (`users`.`id`, `users`.`name`) VALUES (1, 'nick') ") end - + describe 'when given values whose types correspond to the types of the attributes' do before do @insertion = Insert.new(@relation, @relation[:name] => "nick") end - + it 'manufactures sql inserting data' do @insertion.to_sql.should be_like(" INSERT @@ -41,12 +41,12 @@ module Arel ") end end - + describe 'when given values whose types differ from from the types of the attributes' do before do @insertion = Insert.new(@relation, @relation[:id] => '1-asdf') end - + it 'manufactures sql inserting data' do @insertion.to_sql.should be_like(" INSERT @@ -56,16 +56,16 @@ module Arel end end end - + describe '#call' do before do @insertion = Insert.new(@relation, @relation[:name] => "nick") end - + it 'executes an insert on the connection' do mock(connection = Object.new).insert(@insertion.to_sql) @insertion.call(connection) end end end -end
\ No newline at end of file +end diff --git a/spec/doubles/database.rb b/spec/doubles/database.rb index 3be11a9164..7670958d7a 100644 --- a/spec/doubles/database.rb +++ b/spec/doubles/database.rb @@ -1,5 +1,3 @@ -require 'active_record/connection_adapters/abstract/quoting' - module Fake class Engine def connection |