【发布时间】:2013-11-05 00:52:49
【问题描述】:
我的任务是这样实现的:
class MyTask
@queue = :queue_name
include BaseTask
end
module BaseTask
include Observable
def perform
add_observer(MyObserver.new)
...
changed
notify_observers
end
end
我有一个 Resque 任务 include Observable 使用 perform 方法调用 add_observer、changed 和 notify_observers。如何使用RSpec 测试BaseTask?我初始化了MyTask 并调用了task.perform。我试过Observable.should_receive(:add_observer)、MyTask.any_instance.should_receive(:add_observer)、BaseTask.should_receive(:add_observer),但它们不起作用?
【问题讨论】:
标签: ruby rspec observer-pattern resque