У меня проблемы с методом Mocking RestTemplate.getForObject.Определение метода:
public <T> T getForObject(String url, Class<T> responseType, Object... uriVariables) throws RestClientException
Я использую этот метод в своем классе обслуживания следующим образом.
User user = restTemplate.getForObject("https://api.github.com/users/{username}",
User.class, username);
Сервисный метод получает «имя пользователя» в качестве входных данных, которые я передаю методу getForObject.
В моем методе Test у меня есть шаблон Mock Rest Template.
doAnswer(new Answer<User>() {
@Override
public User answer(InvocationOnMock invocationOnMock) throws Throwable {
User user = new User();
user.setLogin("ghtvnath");
user.setName("Tharindu Vishwanath");
return user;
}
}).when(restTemplate).getForObject(anyString(),
eq(User.class), anyString());
Но по какой-то причине эта насмешка не работает.