我正在使用扫地机观看模型并使用snogmetrics进行一些记录:
class UserSweeper < ActionController::Caching::Sweeper
observe User
def after_create(user)
km.identify(user.email)
end
end
我正在使用扫地机而不是观察者,因为snogmetrics需要会话以便正常运行。
然而,在测试时,snogmetrics完全失败
NoMethodError: undefined method `identify' for nil:NilClass
如何禁用扫地机进行单元测试?谢谢!
答案 0 :(得分:0)
km
在哪里定义?根据我的看法,它没有在你的user_sweeper中定义,因此无论你所处的环境如何,它都会失败。
答案 1 :(得分:0)
我能够在测试期间使用no-peeping-toms gem来阻止观察者。
注意:这也适用于rake任务。我遇到了一个问题,即在迁移过程中调用了观察者,这就解决了它。