def test_graph_k_shortest_path_lengths(self):
     graph = retworkx.PyGraph()
     graph.add_nodes_from(list(range(8)))
     graph.add_edges_from_no_data([(0, 1), (1, 2), (2, 3), (3, 0), (4, 5),
                                   (1, 4), (5, 6), (6, 7), (7, 5)])
     res = retworkx.graph_k_shortest_path_lengths(graph, 1, 2, lambda _: 1)
     expected = {0: 3, 1: 2, 2: 3, 3: 2, 4: 3, 5: 4, 6: 4, 7: 4}
     self.assertEqual(res, expected)
 def test_k_graph_shortest_path_with_goal(self):
     graph = retworkx.PyGraph()
     graph.add_nodes_from(list(range(7)))
     graph.add_edges_from_no_data([(0, 1), (0, 6), (1, 2), (2, 3), (3, 4),
                                   (4, 5), (5, 6)])
     res = retworkx.graph_k_shortest_path_lengths(graph, 0, 2, lambda _: 1,
                                                  3)
     self.assertEqual({3: 4}, res)
Beispiel #3
0
 def test_k_graph_shortest_path_with_goal_node_hole(self):
     graph = retworkx.generators.path_graph(4)
     graph.remove_node(0)
     res = retworkx.graph_k_shortest_path_lengths(graph,
                                                  start=1,
                                                  k=1,
                                                  edge_cost=lambda _: 1,
                                                  goal=3)
     self.assertEqual({3: 2}, res)