public void BFS_MultiSource_Test() { var sources = new HashSet<int>() { 0, 3 }; BreadthFirstPaths BFS = new BreadthFirstPaths(basicGraph, sources); Assert.IsTrue(BFS.HasPathTo(3)); Assert.IsFalse(BFS.HasPathTo(8)); var path = BFS.PathTo(7); var SB = new StringBuilder(); foreach (int v in path) { SB.Append(v.ToString()); } Assert.AreEqual("027", SB.ToString()); Stack<int> path4 = (Stack<int>)BFS.PathTo(4); //We know that returned type is an stack Assert.AreEqual(3, path4.Pop()); }
public void BFS_Test() { BreadthFirstPaths BFS = new BreadthFirstPaths(basicGraph, 0); Assert.IsTrue(BFS.HasPathTo(3)); Assert.IsFalse(BFS.HasPathTo(8)); var path = BFS.PathTo(7); var SB = new StringBuilder(); foreach (int v in path) { SB.Append(v.ToString()); } Assert.AreEqual("027", SB.ToString()); }