Я хочу смоделировать вызов метода для определенного параметра c и вызвать реальный метод для остальных. У меня есть:
@TestInstance(TestInstance.Lifecycle.PER_CLASS)
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
@SpringBootTest(classes = AppConfig.class)
@ActiveProfiles("mvntest")
public class OKMMoveMergeTest {
@MockBean
private FolderDAO folderDAO;
...
@Test
public void callDocCreateEp() throws Exception {
Mockito.doCallRealMethod().when(folderDAO).getFoldersHierarchy(any(EHierarchyType.class));
Mockito.doReturn(screwedHierarchy).when(folderDAO).getFoldersHierarchy(EHierarchyType.CLIENT_DOC);
...
}
}
С этим я получаю поддельный результат для folderDAO.getFoldersHierarchy(EHierarchyType.CLIENT_DOC)
, но когда я пытаюсь вызвать его с любым другим параметром, я получаю NullPointerException
, так что я делаю неправильно или как мне заглушить вызов метода только для определенного параметра?
junit-jupiter-api: 5.4.0
junit-jupiter-engine: 5.4.0
spring-boot: 2.1.4. ВЫПУСК mockito-junit-jupiter: 2.23.0