Rspec 测试(无法判断某行代码是否被执行)
Rspec testing (can't tell whether a certain line of code is getting executed)
我尝试在 rspec 中测试此方法:
def resend_if_failed
ResendWorker.new(self).resend_message
end
如何测试 ResendWorker.new(self).resend_message
是否已执行?
如果您的规范中有实例,您可以这样做:
expect(instance).to receive(:resend_if_failed)
instance.resend_if_failed
显然我猜resend_if_failed
是由另一种方法触发的。
然后如有必要,单独测试 resend_if_failed
行为。
worker = double
allow(ResendWorker).to receive(:new).and_return(worker)
expect(worker).to receive(:resend_message)
instance.resend_if_failed
我尝试在 rspec 中测试此方法:
def resend_if_failed
ResendWorker.new(self).resend_message
end
如何测试 ResendWorker.new(self).resend_message
是否已执行?
如果您的规范中有实例,您可以这样做:
expect(instance).to receive(:resend_if_failed)
instance.resend_if_failed
显然我猜resend_if_failed
是由另一种方法触发的。
然后如有必要,单独测试 resend_if_failed
行为。
worker = double
allow(ResendWorker).to receive(:new).and_return(worker)
expect(worker).to receive(:resend_message)
instance.resend_if_failed