module Sidekiq

Overview

Require "sidekiq/testing" in your spec_helper (or similar) to enable Sidekiq.testing. This monkey patches Sidekiq::Client so jobs pushed while Sidekiq::TestMode::Inline is active don't hit Redis at all, they run synchronously instead.

require "sidekiq/testing"

Sidekiq.testing(Sidekiq::TestMode::Inline)

Defined in:

sidekiq.cr
sidekiq/api.cr
sidekiq/client.cr
sidekiq/core_ext.cr
sidekiq/job.cr
sidekiq/log_formatter.cr
sidekiq/metrics.cr
sidekiq/metrics/histogram.cr
sidekiq/metrics/middleware.cr
sidekiq/metrics/query.cr
sidekiq/middleware.cr
sidekiq/pool.cr
sidekiq/server/cli.cr
sidekiq/server/exception_handler.cr
sidekiq/server/fetch.cr
sidekiq/server/heartbeat.cr
sidekiq/server/processor.cr
sidekiq/server/retry_jobs.cr
sidekiq/server/scheduled.cr
sidekiq/server/server.cr
sidekiq/server/util.cr
sidekiq/testing.cr
sidekiq/types.cr
sidekiq/version.cr
sidekiq/web.cr
sidekiq/web_fs.cr
sidekiq/web_helpers.cr
sidekiq/worker.cr

Constant Summary

LICENSE = "Licensed for use under the terms of the GNU LGPL-3.0 license."
Log = ::Log.for(self)
NAME = "Sidekiq"
VERSION = {{ (`shards version \"/srv/crystaldoc.info/github-hugopl-sidekiq.cr-v0.8.0/src/sidekiq\"`).chomp.stringify }}

Class Method Summary

Class Method Detail

def self.redis(&) #

[View source]
def self.test_mode : Sidekiq::TestMode #

[View source]
def self.test_mode=(test_mode : Sidekiq::TestMode) #

[View source]
def self.testing(mode : Sidekiq::TestMode) : Nil #

Sets the Sidekiq test mode globally, until changed again.

Sidekiq.testing(Sidekiq::TestMode::Inline)


[View source]
def self.testing(mode : Sidekiq::TestMode, &) #

Sets the Sidekiq test mode for the duration of the block, restoring whatever mode was previously active once the block returns.

Sidekiq.testing(Sidekiq::TestMode::Inline) do HardWorker.async.perform(1_i64) end


[View source]