我想在我的单元测试中设置一个模拟类方法的期望。我想模拟的方法将元素列表作为输入参数。如何设置期望,以便在调用mock时忽略列表中元素的顺序?
例如:
mockClass方法签名
String foo(List<String> list)
我目前是这样设定期望的
List<String> list = new ArrayList<>();
list.add{"a"}
list.add{"b"}
list.add{"c"}
and:
mockClass.foo(list) >> "test"
此测试间歇性地失败,因为在测试期间调用方法时,列表中元素的顺序不同。
1条答案
按热度按时间yhuiod9q1#
argThat闭包可用于定义一个自定义参数匹配器,该匹配器忽略列表中元素的顺序。
例如: