aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases/adapter_test.rb
diff options
context:
space:
mode:
authorGabriel Sobrinho <gabriel.sobrinho@gmail.com>2011-06-30 20:29:53 -0300
committerGabriel Sobrinho <gabriel.sobrinho@gmail.com>2011-07-01 10:04:10 -0300
commit5399471820e24e316f3444b98eb3920baf23caf6 (patch)
tree3862833b5a20e9977dce102302c7891979c63ffb /activerecord/test/cases/adapter_test.rb
parentb31ce90e99ca73ebbe529d9fef9d6ead3e2364a9 (diff)
downloadrails-5399471820e24e316f3444b98eb3920baf23caf6.tar.gz
rails-5399471820e24e316f3444b98eb3920baf23caf6.tar.bz2
rails-5399471820e24e316f3444b98eb3920baf23caf6.zip
Create a test case for disable_referential_integrity
Diffstat (limited to 'activerecord/test/cases/adapter_test.rb')
-rw-r--r--activerecord/test/cases/adapter_test.rb14
1 files changed, 14 insertions, 0 deletions
diff --git a/activerecord/test/cases/adapter_test.rb b/activerecord/test/cases/adapter_test.rb
index 07de544868..4c65193d75 100644
--- a/activerecord/test/cases/adapter_test.rb
+++ b/activerecord/test/cases/adapter_test.rb
@@ -146,4 +146,18 @@ class AdapterTest < ActiveRecord::TestCase
end
end
end
+
+ def test_disable_referential_integrity
+ assert_nothing_raised do
+ @connection.disable_referential_integrity do
+ # Oracle adapter uses prefetched primary key values from sequence and passes them to connection adapter insert method
+ if @connection.prefetch_primary_key?
+ id_value = @connection.next_sequence_value(@connection.default_sequence_name("fk_test_has_fk", "id"))
+ @connection.execute "INSERT INTO fk_test_has_fk (id, fk_id) VALUES (#{id_value},0)"
+ else
+ @connection.execute "INSERT INTO fk_test_has_fk (fk_id) VALUES (0)"
+ end
+ end
+ end
+ end
end