PowerMocking static не возвращает ожидаемый объект
У меня проблема с насмешкойCalendar.getInstance()
, Как вам сейчас этот метод возвращает календарь - объект, над которым я издеваюсь.
Прямо сейчас мой код выглядит так:
@RunWith(PowerMockRunner.class)
@PrepareForTest(Calendar.class)
public class SurveillanceDatabaseTest {
@Test
public void testFailingDatabase() throws Exception {
mockStatic(Calendar.class);
Calendar calendar = new GregorianCalendar();
calendar.add(Calendar.HOUR, 1);
when(Calendar.getInstance()).thenReturn(calendar);
final Surveillance surveillance = new Surveillance();
surveillance.checkDatabase();
}
}
Calendar.getInstance()
вызывается в разное времяsurveillance.checkDatabase()
и каждый раз это новый объект, а не ожидаемый макет календаря.
Кто-нибудь может увидеть, что я делаю не так?