On Rails 4.2 я следующий тест ActiveJob:Тестирование ActiveJob с MiniTest не попала очередь нужно Sidekiq
тест/Работа/import_job_test.rb
require 'test_helper'
class ImportJobTest < ActiveJob::TestCase
def setup
@response = ImportJob.perform_later "'testing Sidekiq queue jobs'"
end
test "enqueued jobs" do
assert_enqueued_jobs 1
clear_enqueued_jobs
assert_enqueued_jobs 0
end
test "ActiveJob::QueueAdapters::SidekiqAdapter::JobWrapper" do
assert_equal ["'testing Sidekiq queue jobs'"], @response.arguments
end
test "a second new job has been enqueued with the given arguments" do
assert_enqueued_jobs 1
assert_enqueued_with(job: ImportJob, args: ["'queuing a second job'"], queue: 'default') do
ImportJob.perform_later "'queuing a second job'"
end
assert_enqueued_jobs 2
end
end
Запуск теста он идет зеленый:
$ rake test test/jobs/import_job_test.rb
Started with run options --seed 35322
4/4: [===================================] 100% Time: 00:00:00, Time: 00:00:00
Finished in 0.01380s
4 tests, 7 assertions, 0 failures, 0 errors, 0 skips
, но никогда не прикасайтесь к очереди Sidekiq. Я становлюсь зеленым, когда Sidekiq выключен, чего я не хочу. Конечно, запуская консоль, очередь укушена.
Как я могу указать, чтобы ДЕЙСТВИТЕЛЬНО попасть в очередь в тестовом режиме?