PowerMocking estática no devuelve el objeto esperado
Tengo un problema burlónCalendar.getInstance()
. Como ahora, este método devuelve un calendario: el objeto del que me estoy burlando.
En este momento mi código se ve así:
@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()
es llamado varias veces ensurveillance.checkDatabase()
y cada vez es un nuevo objeto y no el simulacro esperado del calendario.
¿Alguien puede ver lo que estoy haciendo mal?