method

assert_no_enqueued_jobs

Importance_2
v5.2.3 - Show latest stable - 0 notes - Class: TestHelper
assert_no_enqueued_jobs(only: nil, except: nil, &block) public

Asserts that no jobs have been enqueued.

def test_jobs
  assert_no_enqueued_jobs
  HelloJob.perform_later('jeremy')
  assert_enqueued_jobs 1
end

If a block is passed, that block should not cause any job to be enqueued.

def test_jobs_again
  assert_no_enqueued_jobs do
    # No job should be enqueued from this block
  end
end

It can be asserted that no jobs of a specific kind are enqueued:

def test_no_logging
  assert_no_enqueued_jobs only: LoggingJob do
    HelloJob.perform_later('jeremy')
  end
end

It can be asserted that no jobs except specific class are enqueued:

def test_no_logging
  assert_no_enqueued_jobs except: HelloJob do
    HelloJob.perform_later('jeremy')
  end
end

Note: This assertion is simply a shortcut for:

assert_enqueued_jobs 0, &block
Show source
Register or log in to add new notes.