1
0
Fork 0
mirror of https://github.com/mperham/sidekiq.git synced 2022-11-09 13:52:34 -05:00

add testing method shift_and_perform

This commit is contained in:
awaw 2013-05-30 13:06:08 +08:00
parent 45db83e7de
commit 4cfa817bfb
2 changed files with 17 additions and 0 deletions

View file

@ -87,6 +87,12 @@ module Sidekiq
new.perform(*job['args'])
end
end
# Pop out a single job and perform it
def shift_and_perform
job = jobs.shift
new.perform(*job['args'])
end
end
class << self

View file

@ -119,6 +119,17 @@ class TestTesting < Minitest::Test
StoredWorker.clear
end
it 'shift_and_perform runs only one job' do
assert StoredWorker.perform_async(:first)
assert StoredWorker.perform_async(:second)
assert_equal 2, StoredWorker.jobs.size
StoredWorker.shift_and_perform
assert_equal 1, StoredWorker.jobs.size
StoredWorker.clear
end
class FirstWorker
include Sidekiq::Worker
class_attribute :count