def test_cron_scheduler(self): line = "cron */5 * * 7,8 *" config = schedule_parse.valid_schedule('test', line) sched = scheduler.scheduler_from_config(config, mock.Mock()) start_time = datetime.datetime(2012, 3, 14, 15, 9, 26) next_time = sched.next_run_time(start_time) assert_equal(next_time, datetime.datetime(2012, 7, 1, 0))
def assert_validation(self, schedule, expected, mock_schedulers): context = config_utils.NullConfigContext config = schedule_parse.valid_schedule(schedule, context) mock_schedulers.__getitem__.assert_called_with('cron') func = mock_schedulers.__getitem__.return_value assert_equal(config, func.return_value) func.assert_called_with(expected, context)
def test_cron_scheduler(self): line = "cron */5 * * 7,8 *" config_context = mock.Mock(path='test') config = schedule_parse.valid_schedule(line, config_context) sched = scheduler.scheduler_from_config(config=config, time_zone=None) start_time = datetime.datetime(2012, 3, 14, 15, 9, 26) next_time = sched.next_run_time(start_time) assert_equal(next_time, datetime.datetime(2012, 7, 1, 0)) assert_equal(str(sched), "cron */5 * * 7,8 *")
def test_daily_scheduler(self): config_context = config_utils.NullConfigContext line = "daily 17:32 MWF" config = schedule_parse.valid_schedule(line, config_context) sched = scheduler.scheduler_from_config(config=config, time_zone=None) assert_equal(sched.time_spec.hours, [17]) assert_equal(sched.time_spec.minutes, [32]) start_time = datetime.datetime(2012, 3, 14, 15, 9, 26) for day in [14, 16, 19]: next_time = sched.next_run_time(start_time) assert_equal(next_time, datetime.datetime(2012, 3, day, 17, 32)) start_time = next_time assert_equal(str(sched), "daily 17:32 MWF")