2013-10-07 27 views

回答

23

使用anything匹配:

Foo.should_receive(:bar).with(:baz, anything) 
+2

這工作。需要注意的是,每個參數都需要一個「任何」。 –

+2

我不確定它是否後來被添加,但是RSpec有any_args,所以對於'bar(a,b,c)'你可以做'Foo.should_receive(:bar).with(:baz,any_args)' – rubyprince

+0

謝謝@rubyprince非常多,很棒的提示! –

0

對於Rspec的1.3anything不工作時,你的方法是接收哈希作爲參數,所以請儘量用hash_including(:key => val)

Connectors::Scim::Preprocessors::Builder. 
    should_receive(:build). 
    with(
     hash_including(:connector => connector) 
    ). 
    and_return(preprocessor) 
} 
相關問題