module RSpec::Sidekiq::Matchers
Public Instance Methods
Source
# File lib/rspec/sidekiq/matchers/be_delayed.rb, line 8 def be_delayed(*expected_arguments) BeDelayed.new(*expected_arguments) end
Source
# File lib/rspec/sidekiq/matchers/be_expired_in.rb, line 6 def be_expired_in(expected_argument) BeExpiredIn.new(expected_argument) end
Source
# File lib/rspec/sidekiq/matchers/be_processed_in.rb, line 6 def be_processed_in(expected_queue) BeProcessedIn.new expected_queue end
Source
# File lib/rspec/sidekiq/matchers/be_retryable.rb, line 6 def be_retryable(expected_retry) BeRetryable.new expected_retry end
Source
# File lib/rspec/sidekiq/matchers/be_unique.rb, line 6 def be_unique BeUnique.new end
Source
# File lib/rspec/sidekiq/matchers/enqueue_sidekiq_job.rb, line 86 def enqueue_sidekiq_job(job_class = nil) EnqueueSidekiqJob.new(job_class) end
@api public
Passes if a Job is enqueued as the result of a block. Chainable ‘with` for arguments, `on` for queue, `at` for queued for a specific time, and `in` for a specific interval delay to being queued, `immediately` for queued without delay.
@example
expect { AwesomeJob.perform_async }.to enqueue_sidekiq_job # A specific job class expect { AwesomeJob.perform_async }.to enqueue_sidekiq_job(AwesomeJob) # with specific arguments expect { AwesomeJob.perform_async "Awesome!" }.to enqueue_sidekiq_job.with("Awesome!") # On a specific queue expect { AwesomeJob.set(queue: "high").perform_async }.to enqueue_sidekiq_job.on("high") # At a specific datetime specific_time = 1.hour.from_now expect { AwesomeJob.perform_at(specific_time) }.to enqueue_sidekiq_job.at(specific_time) # In a specific interval (be mindful of freezing or managing time here) freeze_time do expect { AwesomeJob.perform_in(1.hour) }.to enqueue_sidekiq_job.in(1.hour) end # Without any delay expect { AwesomeJob.perform_async }.to enqueue_sidekiq_job.immediately expect { AwesomeJob.perform_at(1.hour.ago) }.to enqueue_sidekiq_job.immediately # With specific context expect { AwesomeJob.set(trace_id: "something").perform_async }.to enqueue_sidekiq_job.with_context(trace_id: anything) ## Composable expect do AwesomeJob.perform_async OtherJob.perform_async end.to enqueue_sidekiq_job(AwesomeJob).and enqueue_sidekiq_job(OtherJob)
Source
# File lib/rspec/sidekiq/matchers/have_enqueued_sidekiq_job.rb, line 6 def have_enqueued_sidekiq_job(*expected_arguments) HaveEnqueuedSidekiqJob.new expected_arguments end
Source
# File lib/rspec/sidekiq/matchers/save_backtrace.rb, line 6 def save_backtrace(expected_backtrace=true) SaveBacktrace.new expected_backtrace end