src/test/graph_wrapper_test.cc
author alpar
Mon, 08 Nov 2004 15:22:39 +0000
changeset 967 6563019430ba
parent 946 c94ef40a22ce
child 970 09f9abe22df2
permissions -rw-r--r--
Several changes in doc.
     1 /* -*- C++ -*-
     2  * src/test/graph_wrapper_test.cc - Part of LEMON, a generic C++ optimization library
     3  *
     4  * Copyright (C) 2004 Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
     5  * (Egervary Combinatorial Optimization Research Group, EGRES).
     6  *
     7  * Permission to use, modify and distribute this software is granted
     8  * provided that this copyright notice appears in all copies. For
     9  * precise terms see the accompanying LICENSE file.
    10  *
    11  * This software is provided "AS IS" with no warranty of any kind,
    12  * express or implied, and with no claim as to its suitability for any
    13  * purpose.
    14  *
    15  */
    16 
    17 #include<iostream>
    18 #include<lemon/concept_check.h>
    19 
    20 #include<lemon/smart_graph.h>
    21 #include<lemon/concept/graph.h>
    22 
    23 #include<lemon/list_graph.h>
    24 #include<lemon/full_graph.h>
    25 #include<lemon/graph_wrapper.h>
    26 
    27 #include"test/test_tools.h"
    28 #include"test/graph_test.h"
    29 
    30 /**
    31 \file
    32 This test makes consistency checks of graph wrappers.
    33 
    34 \todo More extensive tests are needed 
    35 */
    36 
    37 using namespace lemon;
    38 using namespace lemon::concept;
    39 
    40 
    41 typedef SmartGraph Graph;
    42 
    43 
    44 int main() 
    45 {
    46   {
    47     function_requires<StaticGraphConcept<GraphWrapper<Graph> > >();
    48 
    49     function_requires<StaticGraphConcept<RevGraphWrapper<Graph> > >();
    50 
    51     function_requires<StaticGraphConcept<SubGraphWrapper<Graph, Graph::NodeMap<bool> , Graph::EdgeMap<bool> > > >();
    52     function_requires<StaticGraphConcept<NodeSubGraphWrapper<Graph, Graph::NodeMap<bool> > > >();
    53     function_requires<StaticGraphConcept<EdgeSubGraphWrapper<Graph, Graph::EdgeMap<bool> > > >();
    54 
    55     function_requires<StaticGraphConcept<SubBidirGraphWrapper<Graph, Graph::EdgeMap<bool>, Graph::EdgeMap<bool> > > > ();
    56 
    57     function_requires<StaticGraphConcept<BidirGraph<Graph> > >();
    58 
    59     function_requires<StaticGraphConcept<ResGraphWrapper<Graph, int, Graph::EdgeMap<int>, Graph::EdgeMap<int> > > >();
    60 
    61     function_requires<StaticGraphConcept<ErasingFirstGraphWrapper<Graph, Graph::NodeMap<Graph::Edge> > > >();
    62   }
    63   std::cout << __FILE__ ": All tests passed.\n";
    64 
    65   return 0;
    66 }