Я застрял на модульном тесте, над которым я работаю:
if(dsIn.getItemNumber(1,"CC_FY_APPR_OBLIG_AMT") != null)
{
dsIn.setItemNumber(1, "CC_FY_UNOBLIG_AMT", Double.valueOf(newValueIn)-dsIn.getItemNumber(1,"CC_FY_APPR_OBLIG_YTD_AMT"));
}
else
{
dsIn.setItemNumber(1, "CC_FY_UNOBLIG_AMT", Double.valueOf(newValueIn));
}
Мне удалось высказать второй случай, когда getItemNumber() == null
, но я изо всех сил пытаюсь найти правильный способ убедиться, что первый случай выполняется и возвращает соответствующее число после вычитания. Я попытался написать следующий тестовый пример:
@Test
public void testUncheckedApproved() throws TRDIException, IOException{
Mockito.when(dsIn.getItemNumber(1,"CC_FY_APPR_OBLIG_YTD_AMT")).thenReturn(4.0);
evaluate();
Mockito.verify(dsIn, Mockito.times(1)).setItemNumber(1, "CC_FY_UNOBLIG_AMT", Double.valueOf(newValueIn)) - Mockito.verify(dsIn, Mockito.times(1)).setItemNumber(1, "CC_FY_APPR_OBLIG_YTD_AMT",
Double.valueOf(newValueIn));
}
Это, очевидно, не работает, и я также пытался проверить каждый метод в отдельности, но это не способ сделать это. Метод проверки неверен. Мне просто нужно выяснить эту линию.