Дразнящая jdbctemplate с картой параметров - PullRequest
0 голосов
/ 30 сентября 2019

Я пытаюсь смоделировать вызов jdbctemplate.query, используя Mockito для приведенной ниже строки кода

jdbcTemplate.query(sql, paramMap, (rs, rowNum) -> rowMapper(rs))

, где параметрами являются String, Map и ResultSetExtractor соответственно

Когда я пытаюсьчтобы смоделировать его с помощью Mockito, я сталкиваюсь с ошибкой компиляции, ниже приведен код в модульном тесте

when(jdbcTemplate.query(ArgumentMatchers.anyString(), ArgumentMatchers.anyMap(), ArgumentMatchers.any())).thenAnswer(invocation -> {
....
}

Я получаю ошибку

Невозможно разрешить запрос метода (java.lang.String, java.util.Map, T)

1 Ответ

0 голосов
/ 30 сентября 2019

Mockito очень плохо обрабатывает дженерики, поскольку не компилируется, попробуйте заменить any () на any (ResultSetExtractor.class)

when(jdbcTemplate.query(ArgumentMatchers.anyString(), ArgumentMatchers.anyMap(), ArgumentMatchers.any(ResultSetExtractor.class))).thenAnswer(invocation -> {
....
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...