Переполнение стека в определении шага Cucumber при повторной постановке отложенного задания в .perform - PullRequest
3 голосов
/ 20 мая 2011

У меня есть задание, которое должно заново ставить себя в очередь:

class TestJob
  def perform
    Delayed::Job.enqueue(TestJob.new, {priority: 0, run_at: 5.minutes.from_now}) 
    true
  end
end

Я бы хотел вызвать его perform метод в определении шага Cucumber:

Then /^the job should run successfully/ do
  TestJob.new.perform.should == true
end

Однако на этом этапе я получаю переполнение стека.Что вызывает это?

1 Ответ

0 голосов
/ 10 июня 2011

Я уверен, что есть «лучший» ответ, но в прошлый раз, когда я пытался использовать метод enqueue, он был «сломан».Под этим я подразумеваю, что не смог заставить его работать.

Я делаю что-то похожее на то, что вы делаете, за исключением того, что я делаю

TestJob.new.delay(:run_at => 10.seconds.from_now).perform
...