Rspec stub_chain 带参数
Rspec stub_chain with arguments
我知道我可以做到以下几点:
Foo.stub_chain(:bar, :baz).with(:marflar).with(:quux)
这会打断对
的调用
Foo.bar(:marflar).baz(:quux)
但是如果我想删除提供给 baz
的参数,我该怎么办?即
Foo.bar(:marflar).baz
要匹配不带任何参数的调用,您可以使用with(no_args)
。如果您不关心参数,请使用 with(any_args)
。有more matchers available.
所以要匹配这个:
Foo.bar(:marflar).baz
使用这个:
# expect no arguments
Foo.stub_chain(:bar, :baz).with(:marflar).with(no_args)
# expect 0 or any arguments
Foo.stub_chain(:bar, :baz).with(:marflar).with(any_args)
我知道我可以做到以下几点:
Foo.stub_chain(:bar, :baz).with(:marflar).with(:quux)
这会打断对
的调用Foo.bar(:marflar).baz(:quux)
但是如果我想删除提供给 baz
的参数,我该怎么办?即
Foo.bar(:marflar).baz
要匹配不带任何参数的调用,您可以使用with(no_args)
。如果您不关心参数,请使用 with(any_args)
。有more matchers available.
所以要匹配这个:
Foo.bar(:marflar).baz
使用这个:
# expect no arguments
Foo.stub_chain(:bar, :baz).with(:marflar).with(no_args)
# expect 0 or any arguments
Foo.stub_chain(:bar, :baz).with(:marflar).with(any_args)