public void AStarSameOriginAndDestination() { bool error = false; try { var list = CreatePointList(); Graph.Graph <GameObject> graph = new Graph.Graph <GameObject>(); graph.AddNodes(list); int[] indices = new int[graph.Nodes.Count * 2]; for (int i = 0; i < graph.Nodes.Count * 2; i += 2) { indices[i] = Random.Range(0, graph.Nodes.Count); indices[i + 1] = Random.Range(0, graph.Nodes.Count); } graph.CreateEdges(indices, (c, d) => Vector3.Distance(c.transform.position, d.transform.position)); graph.CalculateHeuristics(graph.Nodes[0].Item, (c, d) => Vector3.Distance(c.transform.position, d.transform.position)); var path = graph.AStar(0, 0); } catch { error = true; } Assert.IsFalse(error); }