def test_sequential_flow_two_tasks_with_resumption(self): flow = lf.Flow('lf-2-r').add( TestTask(self.values, name='task1', provides='x1'), TestTask(self.values, name='task2', provides='x2')) # Create FlowDetail as if we already run task1 fd = storage.temporary_flow_detail() td = taskdetail.TaskDetail(name='task1', uuid='42') td.state = states.SUCCESS td.results = 17 fd.add(td) fd.save() td.save() engine = self._make_engine(flow, fd) engine.run() self.assertEquals(self.values, ['task2']) self.assertEquals(engine.storage.fetch_all(), {'x1': 17, 'x2': 5})
def test_sequential_flow_two_tasks_with_resumption(self): flow = lf.Flow('lf-2-r').add( TestTask(self.values, name='task1', provides='x1'), TestTask(self.values, name='task2', provides='x2') ) # Create FlowDetail as if we already run task1 fd = storage.temporary_flow_detail() td = taskdetail.TaskDetail(name='task1', uuid='42') td.state = states.SUCCESS td.results = 17 fd.add(td) fd.save() td.save() engine = self._make_engine(flow, fd) engine.run() self.assertEquals(self.values, ['task2']) self.assertEquals(engine.storage.fetch_all(), {'x1': 17, 'x2': 5})
def test_get_flow_state(self): fd = storage.temporary_flow_detail() fd.state = states.INTERRUPTED fd.save() s = storage.Storage(fd) self.assertEquals(s.get_flow_state(), states.INTERRUPTED)