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() и каждый раз это новый объект, а не ожидаемый макет календаря.

Кто-нибудь может увидеть, что я делаю не так?

Ответы на вопрос(3)

Ваш ответ на вопрос