Ruby 如何使用rspec fire模拟活动记录查找程序?

Ruby 如何使用rspec fire模拟活动记录查找程序?,ruby,rspec,Ruby,Rspec,我正在用以下内容模拟活动记录查找器: 当我运行这个程序时,rspec fire抱怨用户类没有实现find_by_email 声明说,通过子类化FireDouble,可以将类方法加倍。然而,我不知道该怎么做。此外,FireDouble类似乎已经被一个模块所取代 有什么想法吗?这是不可能直接实现的,因为AR查找器实际上并没有以正常的方式定义为方法。列访问器的处理方式相同。启用此功能的最简单方法是显式定义要使用的方法: class User < ActiveRecord::Base def

我正在用以下内容模拟活动记录查找器:

当我运行这个程序时,rspec fire抱怨用户类没有实现find_by_email

声明说,通过子类化FireDouble,可以将类方法加倍。然而,我不知道该怎么做。此外,FireDouble类似乎已经被一个模块所取代


有什么想法吗?

这是不可能直接实现的,因为AR查找器实际上并没有以正常的方式定义为方法。列访问器的处理方式相同。启用此功能的最简单方法是显式定义要使用的方法:

class User < ActiveRecord::Base
  def self.find_by_email(*args); super; end
end
class用户

顺便说一句,.

谢谢!我认为这种反对只包括旧式的查找器选项散列,而不包括动态查找器。
class User < ActiveRecord::Base
  def self.find_by_email(*args); super; end
end