def test_schedule_print(self): def myfunc(): return 'hola!' ec = ExperimentController() tid = ec.schedule("0s", myfunc, track=True) while True: task = ec.get_task(tid) if task.status != TaskStatus.NEW: break time.sleep(1) self.assertEquals('hola!', task.result) ec.shutdown()
def test_schedule_print(self): def myfunc(): return 'hola!' ec = ExperimentController() tid = ec.schedule("0s", myfunc, track=True) while True: task = ec.get_task(tid) if task.status != TaskStatus.NEW: break time.sleep(1) self.assertEquals('hola!', task.result) ec.shutdown()
def test_schedule_exception(self): def raise_error(): # When this task is executed and the error raise, # the FailureManager should set its failure level to # TASK_FAILURE raise RuntimeError, "NOT A REAL ERROR. JUST TESTING!" ec = ExperimentController() tid = ec.schedule("2s", raise_error, track=True) while True: task = ec.get_task(tid) if task.status != TaskStatus.NEW: break time.sleep(1) self.assertEquals(task.status, TaskStatus.ERROR)
def test_schedule_exception(self): def raise_error(): # When this task is executed and the error raise, # the FailureManager should set its failure level to # TASK_FAILURE raise RuntimeError, "NOT A REAL ERROR. JUST TESTING!" ec = ExperimentController() tid = ec.schedule("2s", raise_error, track = True) while True: task = ec.get_task(tid) if task.status != TaskStatus.NEW: break time.sleep(1) self.assertEquals(task.status, TaskStatus.ERROR)
def test_schedule_date(self): def get_time(): return datetime.datetime.now() ec = ExperimentController() schedule_time = datetime.datetime.now() tid = ec.schedule("4s", get_time, track=True) while True: task = ec.get_task(tid) if task.status != TaskStatus.NEW: break time.sleep(1) execution_time = task.result delta = execution_time - schedule_time self.assertTrue(delta > datetime.timedelta(seconds=4)) self.assertTrue(delta < datetime.timedelta(seconds=5)) ec.shutdown()
def test_schedule_date(self): def get_time(): return datetime.datetime.now() ec = ExperimentController() schedule_time = datetime.datetime.now() tid = ec.schedule("4s", get_time, track=True) while True: task = ec.get_task(tid) if task.status != TaskStatus.NEW: break time.sleep(1) execution_time = task.result delta = execution_time - schedule_time self.assertTrue(delta > datetime.timedelta(seconds=4)) self.assertTrue(delta < datetime.timedelta(seconds=5)) ec.shutdown()