def assert_times_job_is_run_at(self, cronjob): tests = ( (u'07:10', False), (u'07:50', False), (u'08:10', False), (u'08:50', False), (u'09:10', True), (u'09:50', False), (u'10:10', True), (u'10:50', False), (u'11:10', True), (u'11:50', False), (u'12:10', True), (u'12:50', False), (u'13:10', True), (u'13:50', False), (u'14:10', True), (u'14:50', False), (u'15:10', False), (u'15:50', False), (u'16:10', False), (u'16:50', False), ) for time, expected in tests: timewarp.jump(date=local_datetime_from_local(u'2010-10-05 %s' % time)) with mock_cron_jobs() as mock_jobs: self._call_runcrons() if expected: self.assertEqual(mock_jobs[cronjob].call_count, 1, u'Cron job was not run at %s.' % time) else: self.assertEqual(mock_jobs[cronjob].call_count, 0, u'Cron job not run at %s.' % time)
def test_job_is_run_again_after_timeout(self): timewarp.enable() with mock_cron_jobs() as mock_jobs: timewarp.jump(date=local_datetime_from_local(u'2010-10-05 10:00:00')) self._call_runcrons() timewarp.jump(date=local_datetime_from_local(u'2010-10-05 10:01:10')) self._call_runcrons() self.assertEqual(mock_jobs[u'poleno.mail.cron.mail'].call_count, 2) timewarp.reset()
def test_job_is_run_with_empty_logs(self): with mock_cron_jobs() as mock_jobs: self._call_runcrons() self.assertEqual(mock_jobs[u'poleno.mail.cron.mail'].call_count, 1)