1

我正在使用扫地机观看模型并使用 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

如何禁用扫描器进行单元测试?谢谢!

4

2 回答 2

0

在测试期间,我能够使用no-peeping-toms gem来阻止观察者。

注意:这也适用于 rake 任务。我遇到了迁移期间调用观察者的问题,这解决了它。

于 2011-08-28T22:57:55.203 回答
0

在哪里km定义?据我所知,它没有在您的 user_sweeper 中定义,因此无论您所处的环境如何,它都会失败。

于 2011-08-26T16:09:30.563 回答