我正在使用一些方法测试一个对象和另一个对象之间的交互呼唤名字论据。但是,我不知道如何为该按名称调用参数创建参数匹配器。
假设这是模拟对象的签名:
def fn(arg1: => String, arg2: Int): Any
然后我真正想做的是测试是否使用已知的第二个参数调用该方法。我什至不太关心第一个参数,但有一种方法来正确测试它也将是一个额外的好处。
这不起作用:
there was one(mock) fn(any[()=>String], eq(12))
也不是这个:
there was one(mock) fn(any[Function0[String]], eq(12))
这甚至无法编译:
there was one(mock) fn(any[=>String], eq(12))
...这显然是可以预料的。
我刚刚在specs2中添加了一些支持命名参数和函数/部分函数参数 https://groups.google.com/d/msg/scala-user/X9OMF64XwKg/ow1A3NjXki0J。请尝试最新的规范2-1.9-SNAPSHOT,如果这不适合您,请在 GitHub 上创建问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)