diff options
author | Eileen M. Uchitelle <eileencodes@users.noreply.github.com> | 2019-04-23 08:12:07 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-04-23 08:12:07 -0400 |
commit | 9f580232ad261e51d982420e07dacb1dea82edca (patch) | |
tree | 1fc8bcdbbb29965c3ab66e35345f23ccb170119b /activejob/test/cases | |
parent | 26bd26fa20da2b68eb93ef6204a0b0f06da19199 (diff) | |
parent | 5d9359bbc3e74f3d1433466174409411185ca49e (diff) | |
download | rails-9f580232ad261e51d982420e07dacb1dea82edca.tar.gz rails-9f580232ad261e51d982420e07dacb1dea82edca.tar.bz2 rails-9f580232ad261e51d982420e07dacb1dea82edca.zip |
Merge pull request #36057 from jhawthorn/activejob_retry_logic
Use ActiveJob 5.2 retry logic for old jobs
Diffstat (limited to 'activejob/test/cases')
-rw-r--r-- | activejob/test/cases/exceptions_test.rb | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/activejob/test/cases/exceptions_test.rb b/activejob/test/cases/exceptions_test.rb index 840f4d40b5..1f07b7b294 100644 --- a/activejob/test/cases/exceptions_test.rb +++ b/activejob/test/cases/exceptions_test.rb @@ -179,6 +179,31 @@ class ExceptionsTest < ActiveSupport::TestCase assert_equal ["Raised ActiveJob::DeserializationError for the 5 time"], JobBuffer.values end + test "running a job enqueued by AJ 5.2" do + job = RetryJob.new("DefaultsError", 6) + job.exception_executions = nil # This is how jobs from Rails 5.2 will look + + assert_raises DefaultsError do + job.enqueue + end + + assert_equal 5, JobBuffer.values.count + end + + test "running a job enqueued and attempted under AJ 5.2" do + job = RetryJob.new("DefaultsError", 6) + + # Fake 4 previous executions under AJ 5.2 + job.exception_executions = nil + job.executions = 4 + + assert_raises DefaultsError do + job.enqueue + end + + assert_equal ["Raised DefaultsError for the 5th time"], JobBuffer.values + end + private def adapter_skips_scheduling?(queue_adapter) [ |