class CallbacksTest::SkipCallbacksTest

Public Instance Methods

test_skip_person() click to toggle source
# File activesupport/test/callbacks_test.rb, line 531
def test_skip_person
  person = PersonSkipper.new
  assert_equal [], person.history
  person.save
  assert_equal [
    [:before_save, :proc],
    [:before_save, :object],
    [:before_save, :block],
    [:after_save, :block],
    [:after_save, :class],
    [:after_save, :object],
    [:after_save, :proc],
    [:after_save, :symbol]
  ], person.history
end
test_skip_person_programmatically() click to toggle source
# File activesupport/test/callbacks_test.rb, line 547
def test_skip_person_programmatically
  PersonForProgrammaticSkipping._save_callbacks.each do |save_callback|
    if "before" == save_callback.kind.to_s
      PersonForProgrammaticSkipping.skip_callback("save", save_callback.kind, save_callback.filter)
    end
  end
  person = PersonForProgrammaticSkipping.new
  assert_equal [], person.history
  person.save
  assert_equal [
    [:after_save, :block],
    [:after_save, :class],
    [:after_save, :object],
    [:after_save, :proc],
    [:after_save, :symbol]
  ], person.history
end