当使用easymock时,以下语句会产生错误:
expect(service.findFoos(criteria, maxResults, aryEq(sortCriteria))).andReturn(expectedResult)
错误如下:
java.lang.IllegalStateException: 3 matchers expected, 1 recorded
easymock中的规则是这样的:
如果你为了一个参数使用了一个参数匹配者,那么你必须对其他参数也使用参数匹配者。上述的aryEq使用了ArrayEquals的匹配者,因此其他参数必须使用参数匹配者
修改如下:
expect(service.findFoos(isA(criteria), eq(maxResults), aryEq(sortCriteria))).andReturn(expectedResult)
java.lang.IllegalStateException: M matchers expected, N recorded [easymock]
最新推荐文章于 2024-02-02 14:25:22 发布