[Lemon-commits] [lemon_svn] klao: r1448 - in hugo/trunk/src: lemon test

Lemon SVN svn at lemon.cs.elte.hu
Mon Nov 6 20:45:31 CET 2006


Author: klao
Date: Wed Jan  5 17:59:50 2005
New Revision: 1448

Modified:
   hugo/trunk/src/lemon/undir_graph_extender.h
   hugo/trunk/src/test/undir_graph_test.cc

Log:
countUndirEdges bugs fixed

Modified: hugo/trunk/src/lemon/undir_graph_extender.h
==============================================================================
--- hugo/trunk/src/lemon/undir_graph_extender.h	(original)
+++ hugo/trunk/src/lemon/undir_graph_extender.h	Wed Jan  5 17:59:50 2005
@@ -237,6 +237,14 @@
       return Parent::maxId(typename Parent::Edge());
     }
 
+
+    int edgeNum() const {
+      return 2 * Parent::edgeNum();
+    }
+    int undirEdgeNum() const {
+      return Parent::edgeNum();
+    }
+
   };
 
 }

Modified: hugo/trunk/src/test/undir_graph_test.cc
==============================================================================
--- hugo/trunk/src/test/undir_graph_test.cc	(original)
+++ hugo/trunk/src/test/undir_graph_test.cc	Wed Jan  5 17:59:50 2005
@@ -43,20 +43,19 @@
   checkConcept<UndirGraph, UndirGraph>();
 }
 
-typedef UndirListGraph Graph;
-typedef Graph::Node Node;
-typedef Graph::UndirEdge UEdge;
-typedef Graph::Edge Edge;
-typedef Graph::NodeIt NodeIt;
-typedef Graph::UndirEdgeIt UEdgeIt;
-typedef Graph::EdgeIt EdgeIt;
-
+template <typename Graph>
 void check_item_counts(Graph &g, int n, int e) {
   check(countNodes(g)==n, "Wrong node number.");
   check(countEdges(g)==2*e, "Wrong edge number.");
 }
 
+template <typename Graph>
 void print_items(Graph &g) {
+
+  typedef typename Graph::NodeIt NodeIt;
+  typedef typename Graph::UndirEdgeIt UEdgeIt;
+  typedef typename Graph::EdgeIt EdgeIt;
+
   cout << "Nodes" << endl;
   int i=0;
   for(NodeIt it(g); it!=INVALID; ++it, ++i) {
@@ -81,9 +80,15 @@
 
 }
 
-int main() {
-  check_concepts();
+template <typename Graph>
+void check_graph() {
 
+  typedef typename Graph::Node Node;
+  typedef typename Graph::UndirEdge UEdge;
+  typedef typename Graph::Edge Edge;
+  typedef typename Graph::NodeIt NodeIt;
+  typedef typename Graph::UndirEdgeIt UEdgeIt;
+  typedef typename Graph::EdgeIt EdgeIt;
 
   Graph g;
 
@@ -102,5 +107,14 @@
 
   check_item_counts(g,3,2);
 
+
+}
+
+int main() {
+  check_concepts();
+
+  check_graph<UndirListGraph>();
+  check_graph<UndirSmartGraph>();
+
   return 0;
 }



More information about the Lemon-commits mailing list