@@ -458,6 +458,20 @@ Item {
458458 compare(view.delayMinutes, greeter.failedLoginsDelayMinutes);
459459 }
460460
461+ function test_forcedDelayWhileTimeChanges() {
462+ greeterSettings.lockedOutTime = new Date().getTime();
463+ resetLoader();
464+ view = findChild(greeter, "testView");
465+ verify(view.delayMinutes > 0);
466+
467+ // Fake a time change by moving lockedOutTime way forward so that
468+ // the greeter will think the wall clock is too early for some
469+ // reason (like NTP messing up).
470+ greeterSettings.lockedOutTime = new Date().getTime() + 6000000;
471+ wait(1000);
472+ compare(view.delayMinutes, 0);
473+ }
474+
461475 function test_forcedDelayRoundTrip() {
462476 greeter.failedLoginsDelayAttempts = 1;
463477 greeter.failedLoginsDelayMinutes = 0.001; // make delay very short