Я пытаюсь смоделировать один запрос, потому что я использую блок rowmapper в качестве вывода. Я создал блок для new RowMapper<Object>() {}
, внутри блока я устанавливаю значения на карте и возвращаю эту карту. Код выполняется успешно, но в покрытии кода я не могу охватить код внутри блока RowMapper.
Я пытался использовать thenAnswer
для покрытия этого блока, но получаю исключение
jdbcTempCPA.query(sql, new Object[] { orderNo, orderNo }, new RowMapper<Object>() {
@Override
public Object mapRow(ResultSet rs, int rowNum) throws SQLException {
ret.put("GetValue",
CommonUtil.correctNullString(rs.getString("SELECTED")));
ret.put("Indicator"
CommonUtil.correctNullString(rs.getString("ADVISORY_INDICATOR")));
return ret;
}
});
и вот код junit для покрытия вышеуказанного кода
Mockito.when(jdbcTemplateMock.query(Mockito.anyString(), Mockito.any(Object[].class),Matchers.<RowMapper<Map<String, String>>>any())).thenReturn(ret);