6 #include <lemon/graph_utils.h>
 
     8 #include <lemon/list_graph.h>
 
     9 #include <lemon/smart_graph.h>
 
    10 #include <lemon/full_graph.h>
 
    12 #include "test_tools.h"
 
    13 #include "graph_utils_test.h"
 
    16 using namespace lemon;
 
    22   typename Graph::Node n1=g.addNode();
 
    23   typename Graph::Node n2=g.addNode();
 
    25   InDegMap<Graph> ind(g);
 
    29   typename Graph::SnapShot snap(g);
 
    31   OutDegMap<Graph> outd(g);
 
    33   check(ind[n1]==0 && ind[n2]==1, "Wrong InDegMap value.");
 
    34   check(outd[n1]==1 && outd[n2]==0, "Wrong OutDegMap value.");
 
    39   check(ind[n1]==1 && ind[n2]==2, "Wrong InDegMap value.");
 
    40   check(outd[n1]==2 && outd[n2]==1, "Wrong OutDegMap value.");
 
    44   check(ind[n1]==0 && ind[n2]==1, "Wrong InDegMap value.");
 
    45   check(outd[n1]==1 && outd[n2]==0, "Wrong OutDegMap value.");
 
    51   { // checking list graph
 
    52     checkGraphCounters<ListGraph>();
 
    54   { // checking smart graph
 
    55     checkGraphCounters<SmartGraph>();
 
    60     check(countNodes(fg) == num, "FullGraph: wrong node number.");
 
    61     check(countEdges(fg) == num*num, "FullGraph: wrong edge number.");    
 
    64   //check In/OutDegMap (and SnapShot feature)
 
    66   checkSnapDeg<ListGraph>();
 
    67   checkSnapDeg<SmartGraph>();
 
    71   std::cout << __FILE__ ": All tests passed.\n";