module ActiveJob::TestHelper
def assert_no_enqueued_jobs(only: nil, except: nil, queue: nil, &block)
Note: This assertion is simply a shortcut for:
end
end
LoggingJob.set(queue: :some_queue).perform_later
assert_no_enqueued_jobs queue: 'default' do
def test_no_logging
Asserts that no jobs are enqueued to a specific queue by passing +:queue+ option
a hash containing the job's class and it's argument are passed as argument.
+:only+ and +:except+ options accept Class, Array of Class, or Proc. When passed a Proc,
end
end
HelloJob.perform_later('jeremy')
assert_no_enqueued_jobs except: HelloJob do
def test_no_logging
Asserts that no jobs except specific class are enqueued by passing +:except+ option.
end
end
HelloJob.perform_later('jeremy')
assert_no_enqueued_jobs only: LoggingJob do
def test_no_logging
Asserts that no jobs of a specific kind are enqueued by passing +:only+ option.
end
end
# No job should be enqueued from this block
assert_no_enqueued_jobs do
def test_jobs_again
If a block is passed, asserts that the block will not cause any job to be enqueued.
end
assert_enqueued_jobs 1
HelloJob.perform_later('jeremy')
assert_no_enqueued_jobs
def test_jobs
Asserts that no jobs have been enqueued.
def assert_no_enqueued_jobs(only: nil, except: nil, queue: nil, &block) assert_enqueued_jobs 0, only: only, except: except, queue: queue, &block end