我想確保使用特定的一組字符串作爲參數調用mocked。 例如,我有以下代碼:Mockito驗證方法是使用set調用的,它包含特定值
public class SomeLogic {
@Autowired
private SpecificService specificService;
public void action() {
Set<String> args = fillArgsMethod();
specificService.handleArgs(args);
}
}
而且我目前的嘗試測試它下面
@Mock
private SpecificService specificService
@InjectMocks
private SomeLogic someLogic;
@Test
public void testAction() {
someLogic.action();
verify(specificService).handleArgs(anySet());
}
但我想可以肯定,那handleArgs()將收到確切的集我期望的字符串。我如何修改驗證以檢查handleArgs是否被設置爲「first」,「second」? 感謝
謝謝,我想我需要Hamcrest方法,但解決的辦法似乎更simplier – me1111
不客氣。我使用Hamcrest是因爲它在測試失敗時具有更好的匹配和更好的報告。 – isah