Changeset 2335:27aa03cd3121 in lemon-0.x for test
- Timestamp:
- 01/08/07 11:39:59 (17 years ago)
- Branch:
- default
- Phase:
- public
- Convert:
- svn:c9d7d8f5-90d6-0310-b91f-818b3a526b0e/lemon/trunk@3123
- Location:
- test
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
test/all_pairs_shortest_path_test.cc
r2269 r2335 29 29 30 30 #include <lemon/fib_heap.h> 31 32 #include <lemon/path.h> 31 33 32 34 #include <lemon/time_measure.h> … … 91 93 } 92 94 95 bool checked_path = false; 96 93 97 for (NodeIt it(graph); it != INVALID; ++it) { 94 98 for (NodeIt jt(graph); jt != INVALID; ++jt) { … … 98 102 "Wrong connection in all pairs shortest path"); 99 103 if (johnson.connected(it, jt)) { 104 if (it != jt && !checked_path) { 105 { 106 Path<Graph> path = johnson.path(it, jt); 107 check(checkPath(graph, path), "Wrong path."); 108 check(pathSource(graph, path) == it, "Wrong path."); 109 check(pathTarget(graph, path) == jt, "Wrong path."); 110 } 111 { 112 Path<Graph> path = floyd.path(it, jt); 113 check(checkPath(graph, path), "Wrong path."); 114 check(pathSource(graph, path) == it, "Wrong path."); 115 check(pathTarget(graph, path) == jt, "Wrong path."); 116 } 117 checked_path = true; 118 std::cout << "Path checked" << std::endl; 119 } 100 120 check(johnson.dist(it, jt) == floyd.dist(it, jt), 101 121 "Wrong distance in all pairs shortest path"); -
test/bfs_test.cc
r2260 r2335 60 60 b = bfs_test.reached(n); 61 61 62 Path<Graph> pp(G); 63 bfs_test.getPath(pp,n); 62 Path<Graph> pp = bfs_test.path(n); 64 63 } 65 64 … … 110 109 check(bfs_test.dist(t)==3,"Bfs found a wrong path. " << bfs_test.dist(t)); 111 110 112 Path<Graph> p(G); 113 check(bfs_test.getPath(p,t),"getPath() failed to set the path."); 111 Path<Graph> p = bfs_test.path(t); 114 112 check(p.length()==3,"getPath() found a wrong path."); 113 check(checkPath(G, p),"path() found a wrong path."); 114 check(pathSource(G, p) == s,"path() found a wrong path."); 115 check(pathTarget(G, p) == t,"path() found a wrong path."); 115 116 116 117 -
test/dfs_test.cc
r2260 r2335 60 60 b = dfs_test.reached(n); 61 61 62 Path<Graph> pp(G); 63 dfs_test.getPath(pp,n); 62 Path<Graph> pp = dfs_test.path(n); 64 63 } 65 64 … … 109 108 dfs_test.run(s); 110 109 111 Path<Graph> p(G); 112 check(dfs_test.getPath(p,t),"getPath() failed to set the path."); 113 check(p.length()==dfs_test.dist(t),"getPath() found a wrong path."); 110 Path<Graph> p = dfs_test.path(t); 111 check(p.length()==dfs_test.dist(t),"path() found a wrong path."); 112 check(checkPath(G, p),"path() found a wrong path."); 113 check(pathSource(G, p) == s,"path() found a wrong path."); 114 check(pathTarget(G, p) == t,"path() found a wrong path."); 114 115 115 116 for(NodeIt v(G); v!=INVALID; ++v) { -
test/dijkstra_test.cc
r2298 r2335 64 64 b = dijkstra_test.reached(n); 65 65 66 Path<Graph> pp(G); 67 dijkstra_test.getPath(pp,n); 66 Path<Graph> pp = dijkstra_test.path(n); 68 67 } 69 68 … … 121 120 122 121 123 Path<Graph> p(G); 124 check(dijkstra_test.getPath(p,t),"getPath() failed to set the path."); 122 Path<Graph> p = dijkstra_test.path(t); 125 123 check(p.length()==4,"getPath() found a wrong path."); 124 check(checkPath(G, p),"path() found a wrong path."); 125 check(pathSource(G, p) == s,"path() found a wrong path."); 126 check(pathTarget(G, p) == t,"path() found a wrong path."); 126 127 127 128 -
test/path_test.cc
r2260 r2335 32 32 33 33 void check_concepts() { 34 checkConcept<concepts::Path<concepts::Graph>, 35 concepts::Path<concepts::Graph> >(); 36 checkConcept<concepts::Path<concepts::Graph>, 37 Path<concepts::Graph> >(); 34 checkConcept<concepts::Path<ListGraph>, concepts::Path<ListGraph> >(); 38 35 checkConcept<concepts::Path<ListGraph>, Path<ListGraph> >(); 36 checkConcept<concepts::Path<ListGraph>, SimplePath<ListGraph> >(); 37 checkConcept<concepts::Path<ListGraph>, StaticPath<ListGraph> >(); 38 checkConcept<concepts::Path<ListGraph>, ListPath<ListGraph> >(); 39 39 } 40 40 41 41 int main() { 42 check_concepts(); 43 44 ListGraph g; 45 46 ListGraph::Node n1 = g.addNode(); 47 ListGraph::Node n2 = g.addNode(); 48 ListGraph::Node n3 = g.addNode(); 49 ListGraph::Node n4 = g.addNode(); 50 ListGraph::Node n5 = g.addNode(); 51 52 ListGraph::Edge e1 = g.addEdge(n1, n2); 53 ListGraph::Edge e2 = g.addEdge(n2, n3); 54 ListGraph::Edge e3 = g.addEdge(n3, n4); 55 ListGraph::Edge e4 = g.addEdge(n4, n5); 56 ListGraph::Edge e5 = g.addEdge(n5, n1); 57 58 { 59 Path<ListGraph> p(g); 60 61 check(p.empty(), "Wrong Path"); 62 check(p.length() == 0, "Wrong Path"); 63 64 { 65 Path<ListGraph>::Builder b(p); 66 b.setStartNode(n3); 67 b.commit(); 68 } 69 70 check(!p.empty(), "Wrong Path"); 71 check(p.length() == 0, "Wrong Path"); 72 check(p.source() == n3, "Wrong Path"); 73 check(p.target() == n3, "Wrong Path"); 74 75 { 76 Path<ListGraph>::Builder b(p); 77 b.pushBack(e3); 78 b.pushBack(e4); 79 b.pushFront(e2); 80 b.commit(); 81 } 82 83 check(!p.empty(), "Wrong Path"); 84 check(p.length() == 3, "Wrong Path"); 85 check(p.source() == n2, "Wrong Path"); 86 check(p.target() == n5, "Wrong Path"); 87 88 { 89 Path<ListGraph>::NodeIt it(p); 90 check((ListGraph::Node)it == n2, "Wrong Path"); ++it; 91 check((ListGraph::Node)it == n3, "Wrong Path"); ++it; 92 check((ListGraph::Node)it == n4, "Wrong Path"); ++it; 93 check((ListGraph::Node)it == n5, "Wrong Path"); ++it; 94 check((ListGraph::Node)it == INVALID, "Wrong Path"); 95 } 96 97 { 98 Path<ListGraph>::EdgeIt it(p); 99 check((ListGraph::Edge)it == e2, "Wrong Path"); ++it; 100 check((ListGraph::Edge)it == e3, "Wrong Path"); ++it; 101 check((ListGraph::Edge)it == e4, "Wrong Path"); ++it; 102 check((ListGraph::Edge)it == INVALID, "Wrong Path"); 103 } 104 105 } 106 42 check_concepts(); 107 43 return 0; 108 44 }
Note: See TracChangeset
for help on using the changeset viewer.