From b9a1e9a4b2289de199b214a542aa9fd3cb19be54 Mon Sep 17 00:00:00 2001 From: Michael Ryan Date: Wed, 18 Feb 2015 17:55:48 -0500 Subject: Add `ActiveRecord::Base.suppress` --- activerecord/test/cases/suppressor_test.rb | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 activerecord/test/cases/suppressor_test.rb (limited to 'activerecord/test/cases') diff --git a/activerecord/test/cases/suppressor_test.rb b/activerecord/test/cases/suppressor_test.rb new file mode 100644 index 0000000000..011d712bb8 --- /dev/null +++ b/activerecord/test/cases/suppressor_test.rb @@ -0,0 +1,22 @@ +require 'cases/helper' +require 'models/notification' +require 'models/user' + +class SuppressorTest < ActiveRecord::TestCase + + def test_suppresses_creation_of_record_generated_by_callback + assert_difference -> { User.count } do + assert_no_difference -> { Notification.count } do + Notification.suppress { UserWithNotification.create! } + end + end + end + + def test_resumes_saving_after_suppression_complete + Notification.suppress { UserWithNotification.create! } + + assert_difference -> { Notification.count } do + Notification.create! + end + end +end -- cgit v1.2.3