COIN-OR::LEMON - Graph Library

source: lemon-0.x/src/test/graph_test.cc @ 965:1e16b8dac159

Last change on this file since 965:1e16b8dac159 was 959:c80ef5912903, checked in by Mihaly Barasz, 20 years ago

skeleton(s) -> concept renaming

File size: 2.2 KB
Line 
1// -*- c++ -*-
2
3#include <iostream>
4#include <vector>
5
6#include <lemon/concept/graph.h>
7#include <lemon/list_graph.h>
8#include <lemon/smart_graph.h>
9#include <lemon/full_graph.h>
10
11#include "test_tools.h"
12#include "graph_test.h"
13#include "map_test.h"
14
15
16using namespace lemon;
17using namespace lemon::concept;
18
19
20int main() {
21  ///\file
22  { // checking graph components
23    function_requires<BaseGraphComponentConcept<BaseGraphComponent> >();
24
25    function_requires<BaseIterableGraphComponentConcept<BaseIterableGraphComponent> >();
26
27    function_requires<IDableGraphComponentConcept<IDableGraphComponent> >();
28    function_requires<MaxIDableGraphComponentConcept<MaxIDableGraphComponent> >();
29
30    function_requires<BaseExtendableGraphComponentConcept<BaseExtendableGraphComponent> >();
31    function_requires<BaseErasableGraphComponentConcept<BaseErasableGraphComponent> >();
32    function_requires<BaseClearableGraphComponentConcept<BaseClearableGraphComponent> >();
33
34    function_requires<IterableGraphComponentConcept<IterableGraphComponent> >();
35
36    function_requires<IdMappableGraphComponentConcept<IdMappableGraphComponent> >();
37    function_requires<MappableGraphComponentConcept<MappableGraphComponent> >();
38
39    function_requires<ExtendableGraphComponentConcept<ExtendableGraphComponent> >();
40    function_requires<ErasableGraphComponentConcept<ErasableGraphComponent> >();
41    function_requires<ClearableGraphComponentConcept<ClearableGraphComponent> >();
42  }
43  { // checking skeleton graphs
44    function_requires<StaticGraphConcept<StaticGraph> >();
45    function_requires<ExtendableGraphConcept<ExtendableGraph> >();
46    function_requires<ErasableGraphConcept<ErasableGraph> >();
47  }
48  { // checking list graph
49    function_requires<ErasableGraphConcept<ListGraph> >();
50
51    checkGraph<ListGraph>();
52    checkGraphNodeMap<ListGraph>();
53    checkGraphEdgeMap<ListGraph>();
54  }
55  { // checking smart graph
56    function_requires<ExtendableGraphConcept<SmartGraph> >();
57
58    checkGraph<SmartGraph>();
59    checkGraphNodeMap<SmartGraph>();
60    checkGraphEdgeMap<SmartGraph>();
61  }
62  { // checking full graph
63    function_requires<StaticGraphConcept<FullGraph> >();
64  }
65
66  std::cout << __FILE__ ": All tests passed.\n";
67
68  return 0;
69}
Note: See TracBrowser for help on using the repository browser.