def test_subportgraph_get_upstream_subportgraph(): pg = get_pg() assert_raises(InvalidPort, lambda: get_upstream_subportgraph(pg, 0)) sub = get_upstream_subportgraph(pg, 2) assert set(sub.vertices()) == {0} sub = get_upstream_subportgraph(pg, 3) assert set(sub.vertices()) == {1, 4} sub = get_upstream_subportgraph(pg, 5) assert set(sub.vertices()) == {0, 1, 2, 4}
def test_ws_sub_ready_for_evaluation_if_no_input_port(): pg = PortGraph() pg.add_vertex(0) pg.add_out_port(0, "out", 0) pg.add_vertex(1) pg.add_in_port(1, "in", 1) pg.connect(0, 1) ws = WorkflowState(pg) assert ws.is_ready_for_evaluation() subpg = get_upstream_subportgraph(pg, 1) subws = WorkflowState(subpg) assert subws.is_ready_for_evaluation()