Я пытаюсь смоделировать набор результатов с помощью GROOVY CLASS, но выдает ошибку:
com.convio.exception.CVSQLException: Error in getting the next alertId from the sequence
при запуске теста
Вот код из Groovy Class
ResultSet rs = Mock(){
}
PreparedStatement ps = Mock(PreparedStatement) {
executeQuery() >> rs
}
Statement statement = Mock(Statement) {
executeQuery(_) >> rs
}
Connection connection = Mock(Connection) {
prepareStatement(_) >> ps
createStatement() >> statement
}
в классе Java, кажется, что rs.next имеет значение false, и alertId никогда не назначается:
try {
con = cvSession.getConn();
stmt = con.prepareStatement(query);
rs = stmt.executeQuery();
if(rs.next())
{
alertId = rs.getInt(1);
}
else {
throw new CVSQLException("Error in getting the next alertId from the sequence");
}
rs.close();
stmt.close();
}
Как я могу проверить свой groovy класс для передачи метода rs.next ()?