如何在 Mockito 上使用 groupMatcher 进行 when 语句

How to make a when statement with groupMatcher on Mockito

我正在使用 quartz 并创建单元测试...

我的测试样本是:

when(scheduler.getJobKeys(groupEquals(GROUP_ONE_JOB_ONE)))
    .thenReturn(SET_JOBKEY_GROUP_ONE_JOB_ONE);

但是.. getJobKeys() 方法接收一个组匹配器作为参数,但 when 不起作用,因为 groupEquals(GROUP_ONE_JOB_ONE) 总是 return 不同的实例。

有人可以帮我将 when()groupEquals 匹配吗?

为什么是否有新实例很重要?

groupEquals returns 一个 GroupMatcher,它扩展了 StringMatcherhas a robust equals and hashCode implementation 从引入匹配器(2.0.0,2011 年 3 月)开始,一直持续到最新的Maven 版本(2.2.1,2013 年 9 月)。 Mockito 在不使用 Mockito 匹配器时默认使用实例 equals 进行匹配,或者显式使用 eq Mockito 匹配器。

你所拥有的应该有用;如果没有,请添加有助于调试问题的其他信息。