Я обновил resque
(1.26.0) и resque_spec
(0.18.1), а также кучу других драгоценных камней, которые пришли сегодня утром для поездки, чтобы исправить другую ошибку, и теперь целая куча моих тестов провалилась с этой ошибкой.
Полная ошибка:
1) Payment#authorize! should place the order in state 'queued
Failure/Error: @order.should be_queued
Resque::NoQueueError:
Jobs must be placed onto a queue.
# ./spec/models/payment_spec.rb:77:in `block (3 levels) in <top (required)>'
Вот соответствующий код в строке 77:
describe "#authorize!" do
before do
@order = FactoryBot.create :order
@payment = @order.checkout.payment
end
it "should enqueue the XstreetCheckout job with the payment_id" do
Resque.should_receive(:enqueue_in).with(0.minutes, Job::BackgroundCheckout, @payment.id)
@order.checkout.start_processing_payment!
end
it "should place the order in state 'queued" do
@order.checkout.start_processing_payment!
@order.reload
@order.should be_queued
end
end
Я провел множество поисков в Google и вижу похожие проблемы, но, похоже, здесь ничего не помогает. Я попытался установить @queue
равным вещи, хотя я даже не уверен, какую очередь использовать, потому что в resque_schedule.yml
.
определена группа.