У меня есть функция, которая использует текущее время для выполнения некоторых вычислений. Я хотел бы издеваться над этим, используя mockito.
Пример класса, который я хотел бы проверить:
public class ClassToTest {
public long getDoubleTime(){
return new Date().getTime()*2;
}
}
Мне хотелось бы что-то вроде:
@Test
public void testDoubleTime(){
mockDateSomeHow(Date.class).when(getTime()).return(30);
assertEquals(60,new ClassToTest().getDoubleTime());
}
Можно ли это издеваться над этим? Я бы не хотел менять "проверенный" код для тестирования.