public void FindsPathInSimpleGraph() { // Given var assembly = Assembly.GetExecutingAssembly(); AdjacencyListLoader loader; using (var stream = assembly.GetManifestResourceStream("Tests.Stubs.Maps." + "simple.al.txt")) { loader = new AdjacencyListLoader(stream); } // When var dfs = new GraphDepthFirstSearch <GraphNode, GraphEdge>(loader.Graph, 0, 5); // Then Assert.AreEqual(4, dfs.Path.Count); }
public void VisitsAllNodes() { // Given var assembly = Assembly.GetExecutingAssembly(); AdjacencyListLoader loader; using (var stream = assembly.GetManifestResourceStream("Tests.Stubs.Maps." + "simple.al.txt")) { loader = new AdjacencyListLoader(stream); } // When var dfs = new GraphDepthFirstSearch <GraphNode, GraphEdge>(loader.Graph, 0); // Then Assert.AreEqual(6, dfs.NumNodesExplored); }
public void PathFoundIsNotOptimal() { // Given var assembly = Assembly.GetExecutingAssembly(); AdjacencyListLoader loader; using (var stream = assembly.GetManifestResourceStream("Tests.Stubs.Maps." + "simple.al.txt")) { loader = new AdjacencyListLoader(stream); } // When var dfs = new GraphDepthFirstSearch <GraphNode, GraphEdge>(loader.Graph, 0, 4); var path = dfs.Path; // Then Assert.AreNotEqual(3, path.Count); }