[Lemon-commits] [lemon_svn] alpar: r1607 - hugo/trunk/src/test
Lemon SVN
svn at lemon.cs.elte.hu
Mon Nov 6 20:46:32 CET 2006
Author: alpar
Date: Sat Mar 5 00:12:10 2005
New Revision: 1607
Modified:
hugo/trunk/src/test/dijkstra_heap_test.cc
Log:
The source node is reported to be reaches but it has no previous node/edge.
Modified: hugo/trunk/src/test/dijkstra_heap_test.cc
==============================================================================
--- hugo/trunk/src/test/dijkstra_heap_test.cc (original)
+++ hugo/trunk/src/test/dijkstra_heap_test.cc Sat Mar 5 00:12:10 2005
@@ -119,16 +119,18 @@
for(NodeIt v(graph); v!=INVALID; ++v) {
if ( dijkstra_test.reached(v) ) {
Edge e=dijkstra_test.pred(v);
- Node u=graph.source(e);
- if ( dijkstra_test.dist(v) - dijkstra_test.dist(u) != cap[e] ) {
- std::cout<<"Error in a shortest path tree edge! Difference: "
- <<std::abs(dijkstra_test.dist(v) - dijkstra_test.dist(u)
- - cap[e])<<std::endl;
- ++error2;
+ if(e!=INVALID) {
+ Node u=graph.source(e);
+ if ( dijkstra_test.dist(v) - dijkstra_test.dist(u) != cap[e] ) {
+ std::cout<<"Error in a shortest path tree edge! Difference: "
+ <<std::abs(dijkstra_test.dist(v) - dijkstra_test.dist(u)
+ - cap[e])<<std::endl;
+ ++error2;
+ }
}
}
}
-
+
std::cout << error1 << " non-tree and " << error2
@@ -168,16 +170,18 @@
for(NodeIt n(graph); v!=INVALID; ++v) {
if ( dijkstra_test2.reached(v) ) {
Edge e=dijkstra_test2.pred(v);
- Node u=graph.source(e);
- if ( dijkstra_test2.dist(v) - dijkstra_test2.dist(u) != cap[e] ) {
- std::cout<<"Error in a shortest path tree edge! Difference: "
- <<std::abs(dijkstra_test2.dist(v) - dijkstra_test2.dist(u)
- - cap[e])<<std::endl;
- ++error2;
+ if(e!=INVALID) {
+ Node u=graph.source(e);
+ if ( dijkstra_test2.dist(v) - dijkstra_test2.dist(u) != cap[e] ) {
+ std::cout<<"Error in a shortest path tree edge! Difference: "
+ <<std::abs(dijkstra_test2.dist(v) - dijkstra_test2.dist(u)
+ - cap[e])<<std::endl;
+ ++error2;
+ }
}
}
}
-
+
std::cout << error1 << " non-tree and " << error2
<< " shortest path tree edge is erroneous."<<std::endl;
@@ -215,16 +219,18 @@
for(NodeIt n(graph); v!=INVALID; ++v) {
if ( dijkstra_test3.reached(v) ) {
Edge e=dijkstra_test3.pred(v);
- Node u=graph.source(e);
- if ( dijkstra_test3.dist(v) - dijkstra_test3.dist(u) != cap[e] ) {
- std::cout<<"Error in a shortest path tree edge! Difference: "
- <<std::abs(dijkstra_test3.dist(v) - dijkstra_test3.dist(u)
- - cap[e])<<std::endl;
- ++error2;
+ if(e!=INVALID) {
+ Node u=graph.source(e);
+ if ( dijkstra_test3.dist(v) - dijkstra_test3.dist(u) != cap[e] ) {
+ std::cout<<"Error in a shortest path tree edge! Difference: "
+ <<std::abs(dijkstra_test3.dist(v) - dijkstra_test3.dist(u)
+ - cap[e])<<std::endl;
+ ++error2;
+ }
}
}
}
-
+
std::cout << error1 << " non-tree and " << error2
<< " shortest path tree edge is erroneous."<<std::endl;
More information about the Lemon-commits
mailing list