CPPUNIT_TEST(EndDSTBackwards2);
CPPUNIT_TEST(EndDSTBackwards3);
CPPUNIT_TEST(EndDSTBackwards4);
+ CPPUNIT_TEST(OverDSTBackwards);
CPPUNIT_TEST(LongBeforeDSTForward);
CPPUNIT_TEST(BeforeDSTForward);
CPPUNIT_TEST(AtDSTForward);
{
WeekCron cron("0123456",10800);
// calc at: Sun Oct 26 02:00:00 CET 2008
- // expected next run: Sun Oct 26 03:00:00 CET 2008
- CPPUNIT_ASSERT_EQUAL( static_cast<time_t>(1224986400), cron.get_next_run(1224979200));
+ // expected next run: Sun Oct 26 02:00:00 2008
+ CPPUNIT_ASSERT_EQUAL( static_cast<time_t>(1224982800), cron.get_next_run(1224979200));
}
void EndDSTBackwards2()
{
WeekCron cron("0123456",10800);
// calc at: Sun Oct 26 02:00:01 CET 2008
- // expected next run: Sun Oct 26 03:00:00 CET 2008
- CPPUNIT_ASSERT_EQUAL( static_cast<time_t>(1224986400), cron.get_next_run(1224979201));
+ // expected next run: Sun Oct 26 02:00:00 2008
+ CPPUNIT_ASSERT_EQUAL( static_cast<time_t>(1224982800), cron.get_next_run(1224979201));
}
void EndDSTBackwards3()
void EndDSTBackwards4()
{
WeekCron cron("0123456",10799);
- // calc at: Sun Oct 26 03:03:20 CET 2008
+ // calc at: Sun Oct 26 02:03:20 2008
// expected next run: Mon Oct 27 02:59:59 CET 2008
+ // current return: 1224986399, Sun Oct 26 02:59:59 2008
CPPUNIT_ASSERT_EQUAL( static_cast<time_t>(1225072799), cron.get_next_run(1224983000));
}
+ void OverDSTBackwards()
+ {
+ WeekCron cron("234",10800);
+ // calc at: Sat Oct 25 05:00:00 2008
+ // expected next run: Tue Oct 28 03:00:00 2008
+ CPPUNIT_ASSERT_EQUAL( static_cast<time_t>(1225159200), cron.get_next_run(1224903600));
+ }
+
void LongBeforeDSTForward()
{
WeekCron cron("0123456",75600);
// calc at: Sat Mar 28 22:00:00 CET 2009
- // expected next run: Sun Mar 29 21:00:00 CEST 2009
- CPPUNIT_ASSERT_EQUAL( static_cast<time_t>(1238349600), cron.get_next_run(1238274000));
+ // expected next run: Sun Mar 29 21:00:00 2009
+ CPPUNIT_ASSERT_EQUAL( static_cast<time_t>(1238353200), cron.get_next_run(1238274000));
}
void BeforeDSTForward()
{
WeekCron cron("0123456",7200);
// calc at: Sun Mar 29 03:00:00 CEST 2009
- // expected next run: Mon Mar 30 02:00:00 CEST 2009
- CPPUNIT_ASSERT_EQUAL( static_cast<time_t>(1238367600), cron.get_next_run(1238288400));
+ // expected next run: Mon Mar 30 02:00:00 2009
+ CPPUNIT_ASSERT_EQUAL( static_cast<time_t>(1238371200), cron.get_next_run(1238288400));
}
void DuringDSTForward()
{
WeekCron cron("0123456",10800);
// calc at: Sun Mar 29 01:59:59 CET 2009
- // expected next run: Sun Mar 29 03:00:00 CEST 2009
- CPPUNIT_ASSERT_EQUAL( static_cast<time_t>(1238288400), cron.get_next_run(1238288399));
+ // expected next run: Sun Mar 29 04:00:00 2009
+ CPPUNIT_ASSERT_EQUAL( static_cast<time_t>(1238292000), cron.get_next_run(1238288399));
}