diff --git a/lib/sidekiq_unique_jobs/testing.rb b/lib/sidekiq_unique_jobs/testing.rb index d8654be3..64dc47e3 100644 --- a/lib/sidekiq_unique_jobs/testing.rb +++ b/lib/sidekiq_unique_jobs/testing.rb @@ -71,18 +71,6 @@ def use_options(tmp_config = {}) sidekiq_options(old_options) end - - # - # Clears the jobs for this worker and removes all locks - # - def clear - jobs.each do |job| - SidekiqUniqueJobs::Unlockable.unlock(job) - end - - Sidekiq::Queues[queue].clear - jobs.clear - end end # @@ -110,8 +98,31 @@ def clear_all SidekiqUniqueJobs::Digests.new.delete_by_pattern("*", count: 10_000) end + + # + # Prepends deletion of locks to clear + # + module ClassMethods + # + # Clears the jobs for this worker and removes all locks + # + def clear + jobs.each do |job| + SidekiqUniqueJobs::Unlockable.unlock(job) + end + + super + end + end end prepend Overrides + + # + # Prepends methods to Sidekiq::Worker + # + module ClassMethods + prepend Overrides::ClassMethods + end end end