Mockito BDD - насмешливый метод RestRemplate exchange () - PullRequest
0 голосов
/ 26 марта 2019

Я пытаюсь смоделировать вызов exchange RestTemplate () с помощью следующего кода:

Метод испытания

given(restTemplate.exchange(any(UriComponents.class), any(HttpMethod.class), any(HttpEntity.class), any(StatusResponse.class)))
            .willReturn(new ResponseEntity<>(HttpStatus.BAD_GATEWAY));

Код не компилируется, потому что:

  1. жалуется, что cannot resolve method willReturn(new ResponseEntity<>(HttpStatus.BAD_GATEWAY))
  2. жалуется, что cannot resolve method exchange(T, T, T, T)

Как мне изменить подпись, чтобы она работала? Спасибо.

Ответы [ 2 ]

1 голос
/ 26 марта 2019

Взгляните на документы на методы обмена.Я не вижу метода, который использует UriComponents в аргументах.

В качестве первого аргумента метода обмена вам нужно использовать String, URI или RequestEntity

0 голосов
/ 26 марта 2019

Первый аргумент exchange (url) должен быть eq("url") или anyString() (при условии, что «url» - это значение, которое вы используете в своем тесте).

4-й аргумент (класс ответа) должен быть eq(StatusResponse.class) или any(Class.class).

...