如何存根初始化方法中调用的方法

铁砂

我想存根初始化方法中调用的方法。

有一个Company这样的类

class Company
  def initialize(code: code, driver: driver)
    @driver = driver
    @code = code
    navigate_to_search_result        
  end

  def navigate_to_search_result
    # do something
  end
end

而且我想对这个方法存根navigate_to_search_result

before(:each) do
  company = Company.new(code: 7220, driver: Selenium::WebDriver.for(:phantomjs))
  allow(company).to receive(:navigate_to_search_result){ true }  
end

但是此代码失败,因为navigate_to_search_result已经通过初始化执行了。

我该如何存根这样的方法?

二手烟

在实例化Company对象之前,即执行操作之前,以下一行之一应在测试中出现/运行Company.new

allow_any_instance_of(Company).to receive(:navigate_to_search_result){ true }

或者

allow_any_instance_of(Company).to receive(:navigate_to_search_result).and_return(true)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何存根初始化方法中调用的方法

来自分类Dev

如何从初始化方法调用类方法?

来自分类Dev

如何从初始化方法调用类方法?

来自分类Dev

初始化后如何自动调用特定的类方法?

来自分类Dev

如何通过调用此方法初始化此数组?

来自分类Dev

初始化后在构造函数中调用方法

来自分类Dev

从初始化条件中中断方法调用

来自分类Dev

方法调用中的数组初始化语法

来自分类Dev

调用类后在初始化中运行方法

来自分类Dev

如何在未初始化对象的构造函数中调用对象方法?

来自分类Dev

如何通过方法调用在Hibernate中打开急切的初始化

来自分类Dev

如何模拟使用外部方法调用在构造函数中初始化的对象?

来自分类Dev

调用了不同的初始化方法

来自分类Dev

BeanCreationException:初始化方法的调用失败

来自分类Dev

从Swift初始化程序调用方法

来自分类Dev

正确的Rails初始化方法调用

来自分类Dev

从Swift初始化程序调用方法

来自分类Dev

通过调用方法初始化数组

来自分类Dev

初始化对象时调用方法

来自分类Dev

如何停止这种在Ruby中错误初始化的方法?

来自分类Dev

在方法中初始化后如何正确显示JFrame

来自分类Dev

在dart中初始化类时如何运行方法

来自分类Dev

如何在Java通用方法中初始化实例

来自分类Dev

如何计算 C# 方法中的初始化字段?

来自分类Dev

在Adapter初始化之前调用的方法,在Android中在适配器初始化之后执行

来自分类Dev

Java:在初始化块中初始化对象时从另一个类调用对象的方法

来自分类Dev

在BeforeFeature方法中初始化Webdriver

来自分类Dev

在方法中初始化字段

来自分类Dev

在方法中初始化Arraylist

Related 相关文章

热门标签

归档