def test_weekly_cacading(self): schedule, created = Schedule.objects.get_or_create( name="test_schedule", time_interval="week", schedule=self.interval, min_date=datetime.date(2011, 1, 1), max_date=datetime.date(2011, 3, 1), ) self.config.schedule = schedule self.config.save() harvest_task("harvester.tests.test_harvest_task", "MockHarvester", self.config_id) harvest_task("harvester.tests.test_harvest_task", "MockHarvester", self.config_id) newconfig = Config.objects.get(id=self.config_id) self.assertEqual(newconfig.start_date, datetime.date(2011, 1, 17)) self.assertEqual(newconfig.end_date, datetime.date(2011, 1, 24))
def test_success(self): # schedule interval is all self.assertTrue( harvest_task("harvester.tests.test_harvest_task", "MockHarvester", self.config_id)) self.assertIsNone(self.config.start_date) self.assertIsNone(self.config.end_date) newconfig = Config.objects.get(id=self.config_id) self.assertEqual(newconfig.enabled, False)
def test_monthly(self): schedule, created = Schedule.objects.get_or_create( name="test_schedule", time_interval="month", schedule=self.interval, min_date=datetime.date(2011, 1, 1), max_date=datetime.date(2011, 3, 1), ) self.config.schedule = schedule self.config.save() self.assertTrue( harvest_task("harvester.tests.test_harvest_task", "MockHarvester", self.config_id)) newconfig = Config.objects.get(id=self.config_id) self.assertEqual(newconfig.start_date, datetime.date(2011, 2, 1)) self.assertEqual(newconfig.end_date, datetime.date(2011, 3, 1))
def test_monthly_limited_today(self): yesterday = datetime.date.today() - datetime.timedelta(days=1) schedule, created = Schedule.objects.get_or_create( name="test_schedule", time_interval="month", schedule=self.interval, min_date=yesterday, max_date=None, ) self.config.schedule = schedule self.config.save() #execution is skipped, because end date would be too far in the future self.assertTrue( harvest_task("harvester.tests.test_harvest_task", "MockHarvester", self.config_id)) newconfig = Config.objects.get(id=self.config_id) self.assertEqual(newconfig.start_date, yesterday) self.assertEqual(newconfig.end_date, yesterday + datetime.timedelta(days=30))