COIN-OR::LEMON - Graph Library

source: lemon-0.x/src/test/graph_wrapper_test.cc @ 1383:79b68a337f9f

Last change on this file since 1383:79b68a337f9f was 1383:79b68a337f9f, checked in by marci, 15 years ago

A new implementation of UndirGraphWrapper?, accordig to the undirected concepts

File size: 2.2 KB
Line 
1/* -*- C++ -*-
2 * src/test/graph_wrapper_test.cc - Part of LEMON, a generic C++ optimization library
3 *
4 * Copyright (C) 2005 Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
5 * (Egervary Research Group on Combinatorial Optimization, 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#include<lemon/concept/undir_graph.h>
23
24#include<lemon/list_graph.h>
25#include<lemon/full_graph.h>
26#include<lemon/graph_wrapper.h>
27
28#include"test/test_tools.h"
29#include"test/graph_test.h"
30
31/**
32\file
33This test makes consistency checks of graph wrappers.
34
35\todo More extensive tests are needed
36*/
37
38using namespace lemon;
39using namespace lemon::concept;
40
41
42
43int main()
44{
45  {
46    typedef StaticGraph Graph;
47    checkConcept<StaticGraph, GraphWrapper<Graph> >();
48
49    checkConcept<StaticGraph, RevGraphWrapper<Graph> >();
50
51    checkConcept<StaticGraph, SubGraphWrapper<Graph,
52      Graph::NodeMap<bool> , Graph::EdgeMap<bool> > >();
53    checkConcept<StaticGraph, NodeSubGraphWrapper<Graph,
54      Graph::NodeMap<bool> > >();
55    checkConcept<StaticGraph, EdgeSubGraphWrapper<Graph,
56      Graph::EdgeMap<bool> > >();
57   
58    checkConcept<StaticGraph, SubBidirGraphWrapper<Graph,
59      Graph::EdgeMap<bool>, Graph::EdgeMap<bool> > >();
60    //    checkConcept<StaticGraph, BidirGraph<Graph> >();
61    checkConcept<StaticGraph, ResGraphWrapper<Graph, int,
62      Graph::EdgeMap<int>, Graph::EdgeMap<int> > >();
63
64    checkConcept<StaticGraph, ErasingFirstGraphWrapper<Graph,
65      Graph::NodeMap<Graph::Edge> > >();
66
67    /// \bug why does not compile with StaticGraph
68    checkConcept<BaseIterableUndirGraphConcept, UndirGraphWrapper<ListGraph> >();
69    checkConcept<IterableUndirGraphConcept, UndirGraphWrapper<ListGraph> >();
70    checkConcept<MappableUndirGraphConcept, UndirGraphWrapper<ListGraph> >();
71  }
72  std::cout << __FILE__ ": All tests passed.\n";
73
74  return 0;
75}
Note: See TracBrowser for help on using the repository browser.