groovy 避免在Spock中对基元类型使用通配符时出现编译器警告

0vvn1miw  于 2022-11-01  发布在  其他
关注(0)|答案(1)|浏览(154)

我正在使用Spock Framework测试我的Java应用程序。每当我尝试使用通配符来检测Mock的原语类型时,编译器都会发出警告。
例如(平凡的例子):

service.add(_, _) >> 42

上面的两个参数都是原语int。编译器给出以下警告:
警告:(34,30)“服务”中的“添加”不能应用于“(java.lang.Object,java.lang.Object)”
在运行时,测试通过了,没有任何问题。但是,如果我试图指定通配符的类型,测试失败。
如何避免出现上述警告消息?

wh6knrhe

wh6knrhe1#

您应该使用型别 Package 函数,而非基本型别。
请参阅github.com/jeffbrown/riccardocardin上的项目。
/src/test/groovy/riccardocardin/库测试的代码。
github.com/spockframework/spock/issues/669解释了为什么这不是一个错误。

相关问题