Как смоделировать метод удаления в java? - PullRequest
0 голосов
/ 19 июня 2020

У меня проблема: Вот мой маршрут:

   @RequestMapping(value = "/killThis/{id}", method = RequestMethod.DELETE)
    public boolean killThis(@PathVariable("id") String id){
        return backend.executeKillThis(id);
    }

Метод executekill Это просто попытка поймать

myRestTemplate.delete(URL.KILL_THIS, params);

Он возвращает истину, если удаление не выполняется выдает ошибку или false, если выбрасывается RestClientException.

Как я могу поиздеваться над этим?

Вот что я сделал:

private void mockKillQuery(RestTemplate restTemplate) {
    Mockito.doReturn(true).when(myRestTemplate).delete(endsWith("/killThis/{id}"), anyString());
    }

и мой тест выглядит так:

@Test
public void should_kill_query(){
    Mockito.when(backend.executeKillThis("myId")).thenReturn(true);
}

И выскакивает ошибка:

'delete' is a *void method* and it *cannot* be stubbed with a *return value*!
Voids are usually stubbed with Throwables:
    doThrow(exception).when(mock).someVoidMethod();

Спасибо

...