Module: Sidekiq::Worker::ClassMethods
- Defined in:
- lib/sidekiq_unique_jobs/testing/sidekiq_overrides.rb
Instance Method Summary collapse
-
#clear ⇒ Object
Clear all jobs for this worker.
- #drain ⇒ Object
- #execute_job(worker, args) ⇒ Object
- #perform_one ⇒ Object
- #unlock(job) ⇒ Object
Instance Method Details
#clear ⇒ Object
Clear all jobs for this worker
33 34 35 36 37 38 39 40 41 42 |
# File 'lib/sidekiq_unique_jobs/testing/sidekiq_overrides.rb', line 33 def clear jobs.each do |job| unlock(job) if Sidekiq::Testing.fake? end # if Sidekiq::VERSION >= '4' # Queues.jobs[queue].clear # else jobs.clear # end end |
#drain ⇒ Object
8 9 10 11 12 13 14 15 16 |
# File 'lib/sidekiq_unique_jobs/testing/sidekiq_overrides.rb', line 8 def drain while (job = jobs.shift) worker = new worker.jid = job['jid'] worker.bid = job['bid'] if worker.respond_to?(:bid=) execute_job(worker, job['args']) unlock(job) if Sidekiq::Testing.fake? end end |
#execute_job(worker, args) ⇒ Object
45 46 47 |
# File 'lib/sidekiq_unique_jobs/testing/sidekiq_overrides.rb', line 45 def execute_job(worker, args) worker.perform(*args) end |
#perform_one ⇒ Object
21 22 23 24 25 26 27 28 29 |
# File 'lib/sidekiq_unique_jobs/testing/sidekiq_overrides.rb', line 21 def perform_one raise(EmptyQueueError, 'perform_one called with empty job queue') if jobs.empty? job = jobs.shift worker = new worker.jid = job['jid'] worker.bid = job['bid'] if worker.respond_to?(:bid=) execute_job(worker, job['args']) unlock(job) if Sidekiq::Testing.fake? end |
#unlock(job) ⇒ Object
50 51 52 |
# File 'lib/sidekiq_unique_jobs/testing/sidekiq_overrides.rb', line 50 def unlock(job) SidekiqUniqueJobs::Unlockable.unlock(job) end |