与Rspec示例并行实现Resque时,我感到困惑.以下是一个类昂贵的方法.generate(self)
类SomeClass ... ChangeGenerator.generate(self)... end
实现resque后,上面的类更改为以下内容并添加了ChangeRecorderJob类.
class SomeClass
...
Resque.enqueue(ChangeRecorderJob, self.id)
...
end
class ChangeRecorderJob
@queue = :change_recorder_job
def self.perform(noti_id)
notification = Notification.find(noti_id)
ChangeGenerator.generate(notification)
end
end
Run Code Online (Sandbox Code Playgroud)
它完美地运作.但我有两个问题.
之前,我的示例规范用于测试整个堆栈的.generate(self)方法.但是现在我把它推进到Resque工作中,我如何能够将我的示例连接起来以使相同的测试变为绿色而不会孤立?或者我必须隔离测试?
最后,如果我有10个工作岗位,我是否必须使用self.perform方法创建10个单独的工作类?