mirror of
https://github.com/mperham/sidekiq.git
synced 2022-11-09 13:52:34 -05:00
Merge pull request #1938 from jejacks0n/extracted_perform
extracts worker.perform so call can be enhanced
This commit is contained in:
commit
47c20e5ce8
4 changed files with 23 additions and 3 deletions
|
@ -49,7 +49,7 @@ module Sidekiq
|
|||
|
||||
stats(worker, msg, queue) do
|
||||
Sidekiq.server_middleware.invoke(worker, msg, queue) do
|
||||
worker.perform(*cloned(msg['args']))
|
||||
execute_job(worker, cloned(msg['args']))
|
||||
end
|
||||
end
|
||||
rescue Sidekiq::Shutdown
|
||||
|
@ -71,6 +71,10 @@ module Sidekiq
|
|||
"<Processor##{object_id.to_s(16)}>"
|
||||
end
|
||||
|
||||
def execute_job(worker, cloned_args)
|
||||
worker.perform(*cloned_args)
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def thread_identity
|
||||
|
|
|
@ -153,7 +153,7 @@ module Sidekiq
|
|||
while job = jobs.shift do
|
||||
worker = new
|
||||
worker.jid = job['jid']
|
||||
worker.perform(*job['args'])
|
||||
execute_job(worker, job['args'])
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -163,7 +163,11 @@ module Sidekiq
|
|||
job = jobs.shift
|
||||
worker = new
|
||||
worker.jid = job['jid']
|
||||
worker.perform(*job['args'])
|
||||
execute_job(worker, job['args'])
|
||||
end
|
||||
|
||||
def execute_job(worker, args)
|
||||
worker.perform(*args)
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -39,6 +39,12 @@ class TestProcessor < Sidekiq::Test
|
|||
assert_equal 1, $invokes
|
||||
end
|
||||
|
||||
it 'executes a worker as expected' do
|
||||
worker = Minitest::Mock.new
|
||||
worker.expect(:perform, nil, [1, 2, 3])
|
||||
@processor.execute_job(worker, [1, 2, 3])
|
||||
end
|
||||
|
||||
it 'passes exceptions to ExceptionHandler' do
|
||||
actor = Minitest::Mock.new
|
||||
actor.expect(:real_thread, nil, [nil, Thread])
|
||||
|
|
|
@ -261,5 +261,11 @@ class TestTesting < Sidekiq::Test
|
|||
assert_equal 1, FirstWorker.count
|
||||
assert_equal 1, SecondWorker.count
|
||||
end
|
||||
|
||||
it 'can execute a job' do
|
||||
worker = Minitest::Mock.new
|
||||
worker.expect(:perform, nil, [1, 2, 3])
|
||||
DirectWorker.execute_job(worker, [1, 2, 3])
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Add table
Reference in a new issue