aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases
diff options
context:
space:
mode:
authorCarlos Antonio da Silva <carlosantoniodasilva@gmail.com>2012-06-06 10:39:03 -0700
committerCarlos Antonio da Silva <carlosantoniodasilva@gmail.com>2012-06-06 10:39:03 -0700
commite638c613d0ecfa44ddc3d328c0979318cf73e33e (patch)
tree36a2ba05339db71fba34f6992491835cf45cec8a /activerecord/test/cases
parentb4fb80cbdab118125df0d48e74b6818fe5ec65d5 (diff)
parent4faaa811614b408b32422692ce36024442d02ffb (diff)
downloadrails-e638c613d0ecfa44ddc3d328c0979318cf73e33e.tar.gz
rails-e638c613d0ecfa44ddc3d328c0979318cf73e33e.tar.bz2
rails-e638c613d0ecfa44ddc3d328c0979318cf73e33e.zip
Merge pull request #6629 from marcandre/destroy
Add ActiveRecord::Base#destroy!
Diffstat (limited to 'activerecord/test/cases')
-rw-r--r--activerecord/test/cases/callbacks_test.rb2
-rw-r--r--activerecord/test/cases/persistence_test.rb7
2 files changed, 9 insertions, 0 deletions
diff --git a/activerecord/test/cases/callbacks_test.rb b/activerecord/test/cases/callbacks_test.rb
index 7690769226..deeef3a3fd 100644
--- a/activerecord/test/cases/callbacks_test.rb
+++ b/activerecord/test/cases/callbacks_test.rb
@@ -426,11 +426,13 @@ class CallbacksTest < ActiveRecord::TestCase
def test_before_destroy_returning_false
david = ImmutableDeveloper.find(1)
assert !david.destroy
+ assert_raise(ActiveRecord::RecordNotDestroyed) { david.destroy! }
assert_not_nil ImmutableDeveloper.find_by_id(1)
someone = CallbackCancellationDeveloper.find(1)
someone.cancel_before_destroy = true
assert !someone.destroy
+ assert_raise(ActiveRecord::RecordNotDestroyed) { someone.destroy! }
assert !someone.after_destroy_called
end
diff --git a/activerecord/test/cases/persistence_test.rb b/activerecord/test/cases/persistence_test.rb
index 0933a4ff3d..fecdf2b705 100644
--- a/activerecord/test/cases/persistence_test.rb
+++ b/activerecord/test/cases/persistence_test.rb
@@ -305,6 +305,13 @@ class PersistencesTest < ActiveRecord::TestCase
assert_raise(ActiveRecord::RecordNotFound) { Topic.find(topic.id) }
end
+ def test_destroy!
+ topic = Topic.find(1)
+ assert_equal topic, topic.destroy!, 'topic.destroy! did not return self'
+ assert topic.frozen?, 'topic not frozen after destroy!'
+ assert_raise(ActiveRecord::RecordNotFound) { Topic.find(topic.id) }
+ end
+
def test_record_not_found_exception
assert_raise(ActiveRecord::RecordNotFound) { Topic.find(99999) }
end