... |
... |
@@ -29,6 +29,7 @@
|
29 |
29 |
void digraph_copy_test() {
|
30 |
30 |
const int nn = 10;
|
31 |
31 |
|
|
32 |
// Build a digraph
|
32 |
33 |
SmartDigraph from;
|
33 |
34 |
SmartDigraph::NodeMap<int> fnm(from);
|
34 |
35 |
SmartDigraph::ArcMap<int> fam(from);
|
... |
... |
@@ -51,6 +52,7 @@
|
51 |
52 |
}
|
52 |
53 |
}
|
53 |
54 |
|
|
55 |
// Test digraph copy
|
54 |
56 |
ListDigraph to;
|
55 |
57 |
ListDigraph::NodeMap<int> tnm(to);
|
56 |
58 |
ListDigraph::ArcMap<int> tam(to);
|
... |
... |
@@ -69,6 +71,9 @@
|
69 |
71 |
nodeCrossRef(ncr).arcCrossRef(ecr).
|
70 |
72 |
node(fn, tn).arc(fa, ta).run();
|
71 |
73 |
|
|
74 |
check(countNodes(from) == countNodes(to), "Wrong copy.");
|
|
75 |
check(countArcs(from) == countArcs(to), "Wrong copy.");
|
|
76 |
|
72 |
77 |
for (SmartDigraph::NodeIt it(from); it != INVALID; ++it) {
|
73 |
78 |
check(ncr[nr[it]] == it, "Wrong copy.");
|
74 |
79 |
check(fnm[it] == tnm[nr[it]], "Wrong copy.");
|
... |
... |
@@ -90,11 +95,18 @@
|
90 |
95 |
}
|
91 |
96 |
check(tn == nr[fn], "Wrong copy.");
|
92 |
97 |
check(ta == er[fa], "Wrong copy.");
|
|
98 |
|
|
99 |
// Test repeated copy
|
|
100 |
digraphCopy(from, to).run();
|
|
101 |
|
|
102 |
check(countNodes(from) == countNodes(to), "Wrong copy.");
|
|
103 |
check(countArcs(from) == countArcs(to), "Wrong copy.");
|
93 |
104 |
}
|
94 |
105 |
|
95 |
106 |
void graph_copy_test() {
|
96 |
107 |
const int nn = 10;
|
97 |
108 |
|
|
109 |
// Build a graph
|
98 |
110 |
SmartGraph from;
|
99 |
111 |
SmartGraph::NodeMap<int> fnm(from);
|
100 |
112 |
SmartGraph::ArcMap<int> fam(from);
|
... |
... |
@@ -122,6 +134,7 @@
|
122 |
134 |
}
|
123 |
135 |
}
|
124 |
136 |
|
|
137 |
// Test graph copy
|
125 |
138 |
ListGraph to;
|
126 |
139 |
ListGraph::NodeMap<int> tnm(to);
|
127 |
140 |
ListGraph::ArcMap<int> tam(to);
|
... |
... |
@@ -144,6 +157,10 @@
|
144 |
157 |
nodeCrossRef(ncr).arcCrossRef(acr).edgeCrossRef(ecr).
|
145 |
158 |
node(fn, tn).arc(fa, ta).edge(fe, te).run();
|
146 |
159 |
|
|
160 |
check(countNodes(from) == countNodes(to), "Wrong copy.");
|
|
161 |
check(countEdges(from) == countEdges(to), "Wrong copy.");
|
|
162 |
check(countArcs(from) == countArcs(to), "Wrong copy.");
|
|
163 |
|
147 |
164 |
for (SmartGraph::NodeIt it(from); it != INVALID; ++it) {
|
148 |
165 |
check(ncr[nr[it]] == it, "Wrong copy.");
|
149 |
166 |
check(fnm[it] == tnm[nr[it]], "Wrong copy.");
|
... |
... |
@@ -180,6 +197,13 @@
|
180 |
197 |
check(tn == nr[fn], "Wrong copy.");
|
181 |
198 |
check(ta == ar[fa], "Wrong copy.");
|
182 |
199 |
check(te == er[fe], "Wrong copy.");
|
|
200 |
|
|
201 |
// Test repeated copy
|
|
202 |
graphCopy(from, to).run();
|
|
203 |
|
|
204 |
check(countNodes(from) == countNodes(to), "Wrong copy.");
|
|
205 |
check(countEdges(from) == countEdges(to), "Wrong copy.");
|
|
206 |
check(countArcs(from) == countArcs(to), "Wrong copy.");
|
183 |
207 |
}
|
184 |
208 |
|
185 |
209 |
|