def testExecute(self): g = WorkflowDependencyGraph(self._s) c1 = Connection(self._nodes[0], 0, self._nodes[2], 0) c2 = Connection(self._nodes[1], 0, self._nodes[2], 1) c3 = Connection(self._nodes[1], 1, self._nodes[2], 2) c4 = Connection(self._nodes[2], 0, self._nodes[3], 0) self._s.addItem(self._nodes[0]) self._s.addItem(self._nodes[1]) self._s.addItem(self._nodes[2]) self._s.addItem(self._nodes[3]) self._s.addItem(c1) self._s.addItem(c2) self._s.addItem(c3) self._s.addItem(c4) g.canExecute() for _ in range(len(g._topologicalOrder)): g.execute()
def testGraph1(self): g = WorkflowDependencyGraph(self._s) c1 = Connection(self._nodes[0], 0, self._nodes[1], 0) self._s.addItem(self._nodes[0]) self._s.addItem(self._nodes[1]) self._s.addItem(c1) self.assertTrue(g.canExecute()) self.assertEqual(len(g._topologicalOrder), 2) self.assertEqual(g._topologicalOrder[0], self._nodes[0]) self.assertEqual(g._topologicalOrder[1], self._nodes[1])