我正在尝试使用以下rpsec代码
引发错误allow_any_instance_of(ClientClass).to receive(:instance_method).and_raise(ErrorClass, 'Error raised')
我尝试测试的代码有一个实例方法
def to_be_tested_code
# do some stuff
client = ClientClass.new
client.instance_method
# do other stuff
end
我的问题:
double
一个ClientClass
对象并注入它,导致我的方法签名改变为#to_be_test_code(client_class_instance)
。由于#to_be_test_code
是一种公共方法,因此为了便于测试,我不想更改方法签名。