【发布时间】:2020-06-03 10:09:16
【问题描述】:
对于一个模拟类,我有一个方法,我想测试是否不再需要交互,它看起来类似于:
def someMethod(someMandatoryParam: Int, canBeDefaultIds: Option[Ids] = None): Future[Failures] = {...}
当我在没有默认参数的情况下模拟调用此方法并以这种方式验证它时:
verify(someClass).someMethod(someInt)
然后检查是否没有更多的交互:
verifyNoMoreInteractions(someClass)
我收到一个错误,提示这里有一些意外的交互。
但是在实现时,我将此方法更改为使用 None 而不是默认值并验证:
verify(someClass).someMethod(someInt, None)
verifyNoMoreInteractions(someClass)
它工作正常。
Mocikto 和 Scala 中的默认值有问题吗?
【问题讨论】: