как проверять строку на NUNIT - PullRequest
0 голосов
/ 05 июля 2018

Я пишу юнит-тесты для кода ниже. но охват приведенных ниже строк кода отсутствует. Я не уверен, как мы можем охватить следующие строки. Мои исследования не помогли.

public DetailsResponse mapRow(ResultSet resultSet, int num) throws SQLException {
    DetailsResponse DetailsResponse = new DetailsResponse();
    String[] responseElements = null;
    String response = resultSet.getString(1);
    //coverage missing for below line
    if (response != null && response.indexOf(",") != -1) {
        responseElements = response.split(",");
    }
    //coverage missing for below line
    if (responseElements != null && responseElements.length > 0) {
      //coverage missing for below line
        String id = StringUtils.isNotBlank(responseElements[0]) ? responseElements[0].replace("(", "") : "";

Закомментированные строки отсутствуют в покрытии. Как я могу их проверить?

1 Ответ

0 голосов
/ 05 июля 2018

Поскольку это публичный метод, и вы пытаетесь написать модульный тест, а не интеграционный тест, вы можете просто настроить объект ResultSet. При этом вы можете установить объект так, чтобы оба условия были покрыты.

@Test
public void test(){
   // SETUP
   ResultSet resultSet = // setup ResultSet to return what looks like a comma separated list.
   // TEST
   DetailsResponse out = service. mapRow(resultSet, someNum);
   // VERIFY / ASSERT
   // some assert(s) on out
}
...