Closed dNaszta closed 1 year ago
func TestShortestPath(t *testing.T) { g := graph.New(graph.StringHash, graph.Weighted(), graph.Directed()) g.AddVertex("start") g.AddVertex("a") g.AddVertex("b") g.AddVertex("fin") g.AddEdge("start", "a", graph.EdgeWeight(6)) g.AddEdge("start", "b", graph.EdgeWeight(2)) g.AddEdge("a", "fin", graph.EdgeWeight(1)) g.AddEdge("b", "a", graph.EdgeWeight(3)) g.AddEdge("b", "fin", graph.EdgeWeight(5)) path, _ := graph.ShortestPath(g, "start", "fin") wanted := []string{"start", "b", "a", "fin"} if !reflect.DeepEqual(path, wanted) { t.Errorf("shortest path failed, result: %v, wanted: %v", path, wanted) } }
shortest path failed, result: [start b fin], wanted: [start b a fin]
Nice catch, thank you.
The fix has been released in v0.16.2.
shortest path failed, result: [start b fin], wanted: [start b a fin]