spec/arel/engines/sql/unit/relations/insert_spec.rb in arel-0.2.1 vs spec/arel/engines/sql/unit/relations/insert_spec.rb in arel-0.3.0

- old
+ new

@@ -41,12 +41,21 @@ adapter_is :postgresql do @insertion.to_sql.should be_like(%Q{ INSERT INTO "users" ("id", "name") VALUES (1, E'nick') + RETURNING "id" }) end + + adapter_is :oracle do + @insertion.to_sql.should be_like(%Q{ + INSERT + INTO "USERS" + ("ID", "NAME") VALUES (1, 'nick') + }) + end end describe 'when given values whose types correspond to the types of the attributes' do before do @insertion = Insert.new(@relation, @relation[:name] => "nick") @@ -72,12 +81,21 @@ adapter_is :postgresql do @insertion.to_sql.should be_like(%Q{ INSERT INTO "users" ("name") VALUES (E'nick') + RETURNING "id" }) end + + adapter_is :oracle do + @insertion.to_sql.should be_like(%Q{ + INSERT + INTO "USERS" + ("NAME") VALUES ('nick') + }) + end end end describe 'when given values whose types differ from from the types of the attributes' do before do @@ -91,16 +109,34 @@ INTO `users` (`id`) VALUES (1) }) end - adapter_is_not :mysql do + adapter_is :sqlite3 do @insertion.to_sql.should be_like(%Q{ INSERT INTO "users" ("id") VALUES (1) }) end + + adapter_is :postgresql do + @insertion.to_sql.should be_like(%Q{ + INSERT + INTO "users" + ("id") VALUES (1) + RETURNING "id" + }) + end + + adapter_is :oracle do + @insertion.to_sql.should be_like(%Q{ + INSERT + INTO "USERS" + ("ID") VALUES (1) + }) + end + end end end end end