Я пытаюсь проверить, было ли выброшено исключение в моем контроллере покоя. Вот мой контроллер покоя:
@DeleteMapping
public ResponseEntity<Void> cancel(@RequestParam long id) {
if(id < 1) {
throw new MyException();
}
try {
doSomething();
}
catch (SomeException e) {
throw new MyException();
}
}
А вот мой тест:
private MockMvc mockMvc;
@BeforeMethod
public void beforeMethod() {
initMocks(this);
mockMvc = standaloneSetup(new StudyDispatcherController(studyDispatcherService)).build();
}
@Test (expectedExceptions = MyException.class)
public void cancelWithInvalidParam() throws Exception {
mockMvc.perform(delete(BASE_URL).param("id", "-1").contentType("application/json").accept(MediaType.APPLICATION_JSON)).andExpect(status().isBadRequest());
@Test (expectedExceptions = MyException.class)
public void cancelWithException() throws Exception {
doThrow(SomeException.class).when(myService).doSomething();
mockMvc.perform(delete(BASE_URL).param("id", "123").contentType("application/json").accept(MediaType.APPLICATION_JSON)).andExpect(status().is5xxServerError());
}
Однако он выдает org.springframework.web.util.NestedServletException: Ошибка обработки запроса;
Как мне правильно с этим справиться?