Changeset 1568:f694f75de683 in lemon0.x
 Timestamp:
 07/18/05 17:10:22 (18 years ago)
 Branch:
 default
 Phase:
 public
 Convert:
 svn:c9d7d8f590d60310b91f818b3a526b0e/lemon/trunk@2067
 Location:
 test
 Files:

 3 edited
Legend:
 Unmodified
 Added
 Removed

test/graph_utils_test.cc
r1459 r1568 51 51 { // checking list graph 52 52 checkGraphCounters<ListGraph>(); 53 checkFindEdge<ListGraph>(); 53 54 } 54 55 { // checking smart graph 55 56 checkGraphCounters<SmartGraph>(); 57 checkFindEdge<SmartGraph>(); 56 58 } 57 59 { … … 59 61 FullGraph fg(num); 60 62 check(countNodes(fg) == num, "FullGraph: wrong node number."); 61 check(countEdges(fg) == num*num, "FullGraph: wrong edge number."); 63 check(countEdges(fg) == num*num, "FullGraph: wrong edge number."); 64 for (FullGraph::NodeIt src(fg); src != INVALID; ++src) { 65 for (FullGraph::NodeIt trg(fg); trg != INVALID; ++trg) { 66 ConEdgeIt<FullGraph> con(fg, src, trg); 67 check(con != INVALID, "There is no connecting edge."); 68 check(fg.source(con) == src, "Wrong source."); 69 check(fg.target(con) == trg, "Wrong target."); 70 check(++con == INVALID, "There is more connecting edge."); 71 } 72 } 62 73 } 63 74 
test/graph_utils_test.h
r1435 r1568 19 19 20 20 #include "test_tools.h" 21 #include <cstdlib> 22 #include <ctime> 21 23 22 24 //! \ingroup misc … … 38 40 } 39 41 } 42 43 template <typename Graph> 44 void checkFindEdge() { 45 typedef typename Graph::Node Node; 46 typedef typename Graph::Edge Edge; 47 typedef typename Graph::NodeIt NodeIt; 48 typedef typename Graph::EdgeIt EdgeIt; 49 Graph graph; 50 srand(time(0)); 51 for (int i = 0; i < 10; ++i) { 52 graph.addNode(); 53 } 54 DescriptorMap<Graph, Node> nodes(graph); 55 typename DescriptorMap<Graph, Node>::InverseMap invNodes(nodes); 56 for (int i = 0; i < 100; ++i) { 57 int src = (int)(rand() / (RAND_MAX + 1.0) * invNodes.size()); 58 int trg = (int)(rand() / (RAND_MAX + 1.0) * invNodes.size()); 59 graph.addEdge(invNodes[src], invNodes[trg]); 60 } 61 typename Graph::template EdgeMap<bool> found(graph, false); 62 DescriptorMap<Graph, Edge> edges(graph); 63 for (NodeIt src(graph); src != INVALID; ++src) { 64 for (NodeIt trg(graph); trg != INVALID; ++trg) { 65 for (ConEdgeIt<Graph> con(graph, src, trg); con != INVALID; ++con) { 66 check(graph.source(con) == src, "Wrong source."); 67 check(graph.target(con) == trg, "Wrong target."); 68 check(found[con] == false, "The edge found already."); 69 found[con] = true; 70 } 71 } 72 } 73 for (EdgeIt it(graph); it != INVALID; ++it) { 74 check(found[it] == true, "The edge is not found."); 75 } 76 } 40 77 41 78 } //namespace lemon 
test/undir_graph_test.cc
r1435 r1568 40 40 checkConcept<UndirGraph, UndirSmartGraph>(); 41 41 checkConcept<ExtendableUndirGraph, UndirSmartGraph>(); 42 43 checkConcept<UndirGraph, UndirFullGraph>(); 42 44 43 45 checkConcept<UndirGraph, UndirGraph>(); … … 117 119 check_graph<UndirSmartGraph>(); 118 120 121 { 122 UndirFullGraph g(5); 123 check_item_counts(g, 5, 10); 124 } 125 119 126 return 0; 120 127 }
Note: See TracChangeset
for help on using the changeset viewer.