我希望能够执行一些需要工作人员运行的测试。
为了实现这个,我们创建了这个测试辅助方法:
def with_delayed_jobs
t=Thread.new {Delayed::Worker.new.start}
sleep(5)
yield
t.exit
end
所以我可以写我的测试
with_delayed_jobs {
___test_content___
}
不幸的是,工人似乎没有这样做。也许我可以用流程做到这一点。有没有人知道如何做到这一点?
答案 0 :(得分:2)
您可以使用以下命令运行当前在作业表中的作业:
Delayed::Worker.new(
:max_priority => nil,
:min_priority => nil,
:quiet => true
).work_off