Мы собирались обновиться до Rails 7.2.0 и получили новую ошибку в MiniTest (v 5.24.1).
ArgumentError: assert_no_enqueued_jobs requires the Active Job test adapter, you're using ActiveJob::QueueAdapters::SidekiqAdapter.
Я не вижу никаких заметок в журнале изменений Rails или открытых вопросах
Любые предложения о том, как исправить?
Вам необходимо настроить адаптер для тестовой среды:
# config/environment/test.rb
config.active_job.queue_adapter = :test
Все тесты теперь учитывают конфигурацию
active_job.queue_adapter
.Раньше, если вы устанавливали
config.active_job.queue_adapter
в файлеconfig/application.rb
илиconfig/environments/test.rb
, выбранный вами адаптер ранее не использовался последовательно во всех тестах. В некоторых тестах будет использоваться ваш адаптер, но в других тестах будет использоватьсяTestAdapter
.В Rails 7.2 все тесты будут учитывать конфигурацию
queue_adapter
, если она предусмотрена. Если конфигурация не указана,TestAdapter
будет продолжать использоваться.Подробнее см. #48585.
https://github.com/rails/rails/blob/v7.2.0/activejob/CHANGELOG.md#rails-720-august-09-2024