2012-01-12 23 views
4

嘲讽一种方法时,有没有办法接受任意数量的参数?如何在使用Spock嘲笑时删除参数数量的限制?

举例来说,如果我想嘲笑那些2种方法:

foo(String s); 
foo(String s, int i); 

现在,在我的测试我做的:

myMockedClass.foo(_) >> x 
myMockedClass.foo(_, _) >> x 

有没有办法立刻嘲笑两者兼而有之?喜欢的东西:

myMockedClass.foo(*) >> x 

(这不起作用)

回答

3

此功能规划,但还不存在。建议的语法是foo.bar(*_)

+1

在最新的快照中已经实现。 '* _'代表“任何数量(包括零)额外的参数”。它必须在参数列表的最后(但不一定在开始时)出现。 – 2012-01-14 04:15:18