diff --git a/lib/sidekiq/testing.rb b/lib/sidekiq/testing.rb index d236db97..f39e91b6 100644 --- a/lib/sidekiq/testing.rb +++ b/lib/sidekiq/testing.rb @@ -170,7 +170,7 @@ module Sidekiq end def delete_for(jid, queue, klass) - jobs_by_queue[queue].delete_if { |job| job["jid"] == jid } + jobs_by_queue[queue.to_s].delete_if { |job| job["jid"] == jid } jobs_by_worker[klass].delete_if { |job| job["jid"] == jid } end diff --git a/test/test_testing_fake.rb b/test/test_testing_fake.rb index edb84eb6..5c993d8b 100644 --- a/test/test_testing_fake.rb +++ b/test/test_testing_fake.rb @@ -261,6 +261,16 @@ class TestTesting < Sidekiq::Test assert_equal 1, SecondWorker.count end + it 'drains jobs of workers with symbolized queue names' do + Sidekiq::Worker.jobs.clear + + AltQueueWorker.perform_async(5,6) + assert_equal 1, AltQueueWorker.jobs.size + + Sidekiq::Worker.drain_all + assert_equal 0, AltQueueWorker.jobs.size + end + it 'can execute a job' do DirectWorker.execute_job(DirectWorker.new, [2, 3]) end