public void NotFindAnyPath_FindShortestPath_NodePath() { var algorithm = new Algorithm.Logic.ShortestPath.ShortestPath(); var nodes = getNodes(); var queue = new Queue <Node <string> >(); var stack = new Stack <Node <string> >(); queue.Enqueue(nodes); var invalidPath = algorithm.FindShortestPath(queue, "Invalid", stack); Assert.IsNull(invalidPath); }
public void FindsTheShortestPathShortestOne_FindShortestPath_NodePath() { var algorithm = new Algorithm.Logic.ShortestPath.ShortestPath(); var nodes = getInterconnectedNodes(); var queue = new Queue <Node <string> >(); var stack = new Stack <Node <string> >(); queue.Enqueue(nodes); var path = algorithm.FindShortestPath(queue, "End", stack); Assert.IsNotNull(path); Assert.IsTrue(path.Parent.NodeContent == "6" && path.Parent.Parent.NodeContent == "1" && path.Parent.Parent.Parent.NodeContent == "Start"); }