src/test/dijkstra_test.cc
author alpar
Fri, 07 May 2004 06:58:24 +0000
changeset 568 ed0a4de23923
child 570 eec0a62979c9
permissions -rw-r--r--
An alternative dijkstra_test.cc
     1 #include <test_tools.h>
     2 #include <hugo/smart_graph.h>
     3 #include <hugo/dijkstra.h>
     4 
     5 using namespace hugo;
     6 
     7 const int PET_SIZE =5;
     8 
     9 int main()
    10 {
    11     
    12   typedef SmartGraph Graph;
    13 
    14   typedef Graph::Edge Edge;
    15   typedef Graph::Node Node;
    16   typedef Graph::EdgeIt EdgeIt;
    17   typedef Graph::NodeIt NodeIt;
    18   typedef Graph::EdgeMap<int> LengthMap;
    19 
    20   Graph G;
    21   Node s, t;
    22   LengthMap cap(G);
    23 
    24   PetStruct<Graph> ps = addPetersen(G,PET_SIZE);
    25   
    26   for(int i=0;i<PET_SIZE;i++) {
    27     cap[ps.outcir[i]]=4;
    28     cap[ps.incir[i]]=1;
    29     cap[ps.chords[i]]=10;
    30   }
    31   s=ps.outer[0];
    32   t=ps.inner[1];
    33   
    34   Dijkstra<Graph, LengthMap> 
    35 	dijkstra_test(G, cap);
    36   dijkstra_test.run(s);
    37   
    38   check(dijkstra_test.dist(t)==13,"Dijkstra found a wrong path.");
    39   
    40 }
    41