Пример #1
0
 def test_deps_not_ok(self):
     tasks = {'t1': Task('t1', None),
              't2': Task('t2', None),
              }
     td = TaskDispatcher(tasks, [], None)
     n1 = td._gen_node(None, 't1')
     n2 = td._gen_node(None, 't2')
     n2.run_status = 'failure'
     td._node_add_wait_run(n1, ['t2'])
     assert n1.bad_deps
Пример #2
0
 def test_deps_not_ok(self):
     tasks = {'t1': Task('t1', None),
              't2': Task('t2', None),
              }
     td = TaskDispatcher(tasks, [], None)
     n1 = td._gen_node(None, 't1')
     n2 = td._gen_node(None, 't2')
     n2.run_status = 'failure'
     td._node_add_wait_run(n1, ['t2'])
     assert n1.bad_deps
Пример #3
0
 def test_none(self):
     tasks = {'t1': Task('t1', None),
              't2': Task('t2', None),
              }
     td = TaskDispatcher(tasks, [], None)
     n1 = td._gen_node(None, 't1')
     n2 = td._gen_node(None, 't2')
     n2.run_status = 'done'
     td._node_add_wait_run(n1, ['t2'])
     assert not n1.wait_run
Пример #4
0
 def test_none(self):
     tasks = {'t1': Task('t1', None),
              't2': Task('t2', None),
              }
     td = TaskDispatcher(tasks, [], None)
     n1 = td._gen_node(None, 't1')
     n2 = td._gen_node(None, 't2')
     n2.run_status = 'done'
     td._node_add_wait_run(n1, ['t2'])
     assert not n1.wait_run
Пример #5
0
 def test_wait(self):
     tasks = {'t1': Task('t1', None),
              't2': Task('t2', None),
              }
     td = TaskDispatcher(tasks, [], None)
     n1 = td._gen_node(None, 't1')
     n2 = td._gen_node(None, 't2')
     n1.wait_run.add('xxx')
     td._node_add_wait_run(n1, ['t2'])
     assert 2 == len(n1.wait_run)
     assert 't2' in n1.wait_run
     assert not n1.bad_deps
     assert n1 in n2.waiting_me
Пример #6
0
 def test_wait(self):
     tasks = {'t1': Task('t1', None),
              't2': Task('t2', None),
              }
     td = TaskDispatcher(tasks, [], None)
     n1 = td._gen_node(None, 't1')
     n2 = td._gen_node(None, 't2')
     n1.wait_run.add('xxx')
     td._node_add_wait_run(n1, ['t2'])
     assert 2 == len(n1.wait_run)
     assert 't2' in n1.wait_run
     assert not n1.bad_deps
     assert n1 in n2.waiting_me
Пример #7
0
 def test_wait_run_deps_not_ok(self):
     tasks = {'t1': Task('t1', None, task_dep=['t2']),
              't2': Task('t2', None),
              }
     td = TaskDispatcher(tasks, [], None)
     n1 = td._gen_node(None, 't1')
     n2 = td._gen_node(None, 't2')
     td._node_add_wait_run(n1, ['t2'])
     n2.run_status = 'failure'
     td.waiting.add(n1)
     td._update_waiting(n2)
     assert n1.bad_deps
     assert deque([n1]) == td.ready
     assert 0 == len(td.waiting)
Пример #8
0
 def test_wait_run_deps_not_ok(self):
     tasks = {'t1': Task('t1', None, task_dep=['t2']),
              't2': Task('t2', None),
              }
     td = TaskDispatcher(tasks, [], None)
     n1 = td._gen_node(None, 't1')
     n2 = td._gen_node(None, 't2')
     td._node_add_wait_run(n1, ['t2'])
     n2.run_status = 'failure'
     td.waiting.add(n1)
     td._update_waiting(n2)
     assert n1.bad_deps
     assert deque([n1]) == td.ready
     assert 0 == len(td.waiting)
Пример #9
0
 def test_calc_dep_already_executed(self):
     tasks = {'t1': Task('t1', None, calc_dep=['t2']),
              't2': Task('t2', None),
              }
     td = TaskDispatcher(tasks, [], None)
     n1 = td._gen_node(None, 't1')
     n2 = td._gen_node(None, 't2')
     n2.run_status = 'done'
     n2.task.values = {'calc_dep': ['t3'], 'task_dep':['t5']}
     td._node_add_wait_run(n1, ['t2'], calc=True)
     # n1 is updated with results from t2
     assert n1.calc_dep == set(['t2', 't3'])
     assert n1.task_dep == ['t5']
     # n1 doesnt need to wait any calc_dep to be executed
     assert n1.wait_run_calc == set()
Пример #10
0
 def test_calc_dep_already_executed(self):
     tasks = {'t1': Task('t1', None, calc_dep=['t2']),
              't2': Task('t2', None),
              }
     td = TaskDispatcher(tasks, [], None)
     n1 = td._gen_node(None, 't1')
     n2 = td._gen_node(None, 't2')
     n2.run_status = 'done'
     n2.task.values = {'calc_dep': ['t3'], 'task_dep':['t5']}
     td._node_add_wait_run(n1, ['t2'], calc=True)
     # n1 is updated with results from t2
     assert n1.calc_dep == set(['t2', 't3'])
     assert n1.task_dep == ['t5']
     # n1 doesnt need to wait any calc_dep to be executed
     assert n1.wait_run_calc == set()