File tree Expand file tree Collapse file tree 2 files changed +20
-1
lines changed Expand file tree Collapse file tree 2 files changed +20
-1
lines changed Original file line number Diff line number Diff line change @@ -50,7 +50,7 @@ def enqueue_all(event)
50
50
info do
51
51
jobs = event . payload [ :jobs ]
52
52
adapter = event . payload [ :adapter ]
53
- enqueued_count = event . payload [ :enqueued_count ]
53
+ enqueued_count = event . payload [ :enqueued_count ] . to_i
54
54
55
55
if enqueued_count == jobs . size
56
56
enqueued_jobs_message ( adapter , jobs )
Original file line number Diff line number Diff line change @@ -369,6 +369,25 @@ def test_enqueue_all_job_logging
369
369
assert_match ( /Enqueued 3 jobs to .+ \( 2 HelloJob, 1 LoggingJob\) / , @logger . messages )
370
370
end
371
371
372
+ def test_enqueue_all_graceful_failure_when_enqueued_count_is_nil
373
+ original_adapter = ActiveJob ::Base . queue_adapter
374
+
375
+ stubbed_inline_adapter = ActiveJob ::QueueAdapters ::InlineAdapter . new
376
+ def stubbed_inline_adapter . respond_to? ( method_name , include_private = false )
377
+ method_name == :enqueue_all || super
378
+ end
379
+ def stubbed_inline_adapter . enqueue_all ( *)
380
+ nil
381
+ end
382
+
383
+ ActiveJob ::Base . queue_adapter = stubbed_inline_adapter
384
+
385
+ ActiveJob . perform_all_later ( LoggingJob . new ( "Dummy" ) , HelloJob . new ( "Jamie" ) , HelloJob . new ( "John" ) )
386
+ assert_match ( /Failed enqueuing 3 jobs to .+/ , @logger . messages )
387
+ ensure
388
+ ActiveJob ::Base . queue_adapter = original_adapter
389
+ end
390
+
372
391
def test_enqueue_log_level
373
392
@logger . level = WARN
374
393
HelloJob . perform_later "Dummy"
You can’t perform that action at this time.
0 commit comments