@@ -39,11 +39,6 @@ def history
3939 end
4040end
4141
42- class CallbackDeveloperWithFalseValidation < CallbackDeveloper
43- before_validation proc { |model | model . history << [ :before_validation , :returning_false ] ; false }
44- before_validation proc { |model | model . history << [ :before_validation , :should_never_get_here ] }
45- end
46-
4742class CallbackDeveloperWithHaltedValidation < CallbackDeveloper
4843 before_validation proc { |model | model . history << [ :before_validation , :throwing_abort ] ; throw ( :abort ) }
4944 before_validation proc { |model | model . history << [ :before_validation , :should_never_get_here ] }
@@ -132,23 +127,6 @@ def history
132127 end
133128end
134129
135- class CallbackCancellationDeveloper < ActiveRecord ::Base
136- self . table_name = "developers"
137-
138- attr_reader :after_save_called , :after_create_called , :after_update_called , :after_destroy_called
139- attr_accessor :cancel_before_save , :cancel_before_create , :cancel_before_update , :cancel_before_destroy
140-
141- before_save { defined? ( @cancel_before_save ) ? !@cancel_before_save : false }
142- before_create { !@cancel_before_create }
143- before_update { !@cancel_before_update }
144- before_destroy { !@cancel_before_destroy }
145-
146- after_save { @after_save_called = true }
147- after_update { @after_update_called = true }
148- after_create { @after_create_called = true }
149- after_destroy { @after_destroy_called = true }
150- end
151-
152130class CallbackHaltedDeveloper < ActiveRecord ::Base
153131 self . table_name = "developers"
154132
@@ -404,70 +382,6 @@ def test_delete
404382 ] , david . history
405383 end
406384
407- def test_deprecated_before_save_returning_false
408- david = ImmutableDeveloper . find ( 1 )
409- assert_deprecated do
410- assert david . valid?
411- assert !david . save
412- exc = assert_raise ( ActiveRecord ::RecordNotSaved ) { david . save! }
413- assert_equal david , exc . record
414- assert_equal "Failed to save the record" , exc . message
415- end
416-
417- david = ImmutableDeveloper . find ( 1 )
418- david . salary = 10_000_000
419- assert !david . valid?
420- assert !david . save
421- assert_raise ( ActiveRecord ::RecordInvalid ) { david . save! }
422-
423- someone = CallbackCancellationDeveloper . find ( 1 )
424- someone . cancel_before_save = true
425- assert_deprecated do
426- assert someone . valid?
427- assert !someone . save
428- end
429- assert_save_callbacks_not_called ( someone )
430- end
431-
432- def test_deprecated_before_create_returning_false
433- someone = CallbackCancellationDeveloper . new
434- someone . cancel_before_create = true
435- assert_deprecated do
436- assert someone . valid?
437- assert !someone . save
438- end
439- assert_save_callbacks_not_called ( someone )
440- end
441-
442- def test_deprecated_before_update_returning_false
443- someone = CallbackCancellationDeveloper . find ( 1 )
444- someone . cancel_before_update = true
445- assert_deprecated do
446- assert someone . valid?
447- assert !someone . save
448- end
449- assert_save_callbacks_not_called ( someone )
450- end
451-
452- def test_deprecated_before_destroy_returning_false
453- david = ImmutableDeveloper . find ( 1 )
454- assert_deprecated do
455- assert !david . destroy
456- exc = assert_raise ( ActiveRecord ::RecordNotDestroyed ) { david . destroy! }
457- assert_equal david , exc . record
458- assert_equal "Failed to destroy the record" , exc . message
459- end
460- assert_not_nil ImmutableDeveloper . find_by_id ( 1 )
461-
462- someone = CallbackCancellationDeveloper . find ( 1 )
463- someone . cancel_before_destroy = true
464- assert_deprecated do
465- assert !someone . destroy
466- assert_raise ( ActiveRecord ::RecordNotDestroyed ) { someone . destroy! }
467- end
468- assert !someone . after_destroy_called
469- end
470-
471385 def assert_save_callbacks_not_called ( someone )
472386 assert !someone . after_save_called
473387 assert !someone . after_create_called
@@ -525,30 +439,6 @@ def test_before_destroy_throwing_abort
525439 assert !someone . after_destroy_called
526440 end
527441
528- def test_callback_returning_false
529- david = CallbackDeveloperWithFalseValidation . find ( 1 )
530- assert_deprecated { david . save }
531- assert_equal [
532- [ :after_find , :method ] ,
533- [ :after_find , :proc ] ,
534- [ :after_find , :object ] ,
535- [ :after_find , :block ] ,
536- [ :after_initialize , :method ] ,
537- [ :after_initialize , :proc ] ,
538- [ :after_initialize , :object ] ,
539- [ :after_initialize , :block ] ,
540- [ :before_validation , :method ] ,
541- [ :before_validation , :proc ] ,
542- [ :before_validation , :object ] ,
543- [ :before_validation , :block ] ,
544- [ :before_validation , :returning_false ] ,
545- [ :after_rollback , :block ] ,
546- [ :after_rollback , :object ] ,
547- [ :after_rollback , :proc ] ,
548- [ :after_rollback , :method ] ,
549- ] , david . history
550- end
551-
552442 def test_callback_throwing_abort
553443 david = CallbackDeveloperWithHaltedValidation . find ( 1 )
554444 david . save
0 commit comments