[英]rspec stubbing passing the same arguments
样例代码:
class Foo
def initialize(abc)
@abc = abc
@bind = bar
end
def bar
SomeClass.new(@abc)
end
end
现在我想使用rspec和自定义存根对bar进行存根:
allow('Foo').to receive(:bar).and_return(FakeBar.new)
问题是FakeBar.new
必须使用相同的参数:bar
FakeBar.new
进行初始化。 存根时是否可以获取传递给:bar
的参数副本,并在存根类中重用它们?
不知道为什么要做自己想做的事情(可能有一种更简单的方法),但是值得:
allow("Foo").to receive(:bar) { |arg1, arg2| FakeBar.new(arg1, arg2) }
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.