Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: downloads/boost_1_34_1/libs/numeric/interval/test/cmp_exp.cpp @ 29

Last change on this file since 29 was 29, checked in by landauf, 17 years ago

updated boost from 1_33_1 to 1_34_1

File size: 7.9 KB
Line 
1/* Boost test/cmp_exp.cpp
2 * test explicit comparison functions
3 *
4 * Copyright 2002-2003 Guillaume Melquiond
5 *
6 * Distributed under the Boost Software License, Version 1.0.
7 * (See accompanying file LICENSE_1_0.txt or
8 * copy at http://www.boost.org/LICENSE_1_0.txt)
9 */
10
11#include "cmp_header.hpp"
12
13// comparisons between [1,2] and [3,4]
14
15static void test_12_34() {
16  const I a(1,2), b(3,4);
17
18  BOOST_CHECK(cerlt(a, b));
19  BOOST_CHECK(cerle(a, b));
20  BOOST_CHECK(!cergt(a, b));
21  BOOST_CHECK(!cerge(a, b));
22
23  BOOST_CHECK(!cerlt(b, a));
24  BOOST_CHECK(!cerle(b, a));
25  BOOST_CHECK(cergt(b, a));
26  BOOST_CHECK(cerge(b, a));
27
28  BOOST_CHECK(poslt(a, b));
29  BOOST_CHECK(posle(a, b));
30  BOOST_CHECK(!posgt(a, b));
31  BOOST_CHECK(!posge(a, b));
32
33  BOOST_CHECK(!poslt(b, a));
34  BOOST_CHECK(!posle(b, a));
35  BOOST_CHECK(posgt(b, a));
36  BOOST_CHECK(posge(b, a));
37
38  BOOST_CHECK(!cereq(a, b));
39  BOOST_CHECK(cerne(a, b));
40  BOOST_CHECK(!poseq(a, b));
41  BOOST_CHECK(posne(a, b));
42
43  BOOST_CHECK(!cereq(b, a));
44  BOOST_CHECK(cerne(b, a));
45  BOOST_CHECK(!poseq(b, a));
46  BOOST_CHECK(posne(b, a));
47
48# ifdef __BORLANDC__
49  ::detail::ignore_unused_variable_warning(a);
50  ::detail::ignore_unused_variable_warning(b);
51# endif
52}
53
54// comparisons between [1,3] and [2,4]
55
56static void test_13_24() {
57  const I a(1,3), b(2,4);
58
59  BOOST_CHECK(!cerlt(a, b));
60  BOOST_CHECK(!cerle(a, b));
61  BOOST_CHECK(!cergt(a, b));
62  BOOST_CHECK(!cerge(a, b));
63
64  BOOST_CHECK(!cerlt(b, a));
65  BOOST_CHECK(!cerle(b, a));
66  BOOST_CHECK(!cergt(b, a));
67  BOOST_CHECK(!cerge(b, a));
68
69  BOOST_CHECK(poslt(a, b));
70  BOOST_CHECK(posle(a, b));
71  BOOST_CHECK(posgt(a, b));
72  BOOST_CHECK(posge(a, b));
73
74  BOOST_CHECK(poslt(b, a));
75  BOOST_CHECK(posle(b, a));
76  BOOST_CHECK(posgt(b, a));
77  BOOST_CHECK(posge(b, a));
78
79  BOOST_CHECK(!cereq(a, b));
80  BOOST_CHECK(!cerne(a, b));
81  BOOST_CHECK(poseq(a, b));
82  BOOST_CHECK(posne(a, b));
83
84  BOOST_CHECK(!cereq(b, a));
85  BOOST_CHECK(!cerne(b, a));
86  BOOST_CHECK(poseq(b, a));
87  BOOST_CHECK(posne(b, a));
88
89# ifdef __BORLANDC__
90  ::detail::ignore_unused_variable_warning(a);
91  ::detail::ignore_unused_variable_warning(b);
92# endif
93}
94
95// comparisons between [1,2] and [2,3]
96
97static void test_12_23() {
98  const I a(1,2), b(2,3);
99
100  BOOST_CHECK(!cerlt(a, b));
101  BOOST_CHECK(cerle(a, b));
102  BOOST_CHECK(!cergt(a, b));
103  BOOST_CHECK(!cerge(a, b));
104
105  BOOST_CHECK(!cerlt(b, a));
106  BOOST_CHECK(!cerle(b, a));
107  BOOST_CHECK(!cergt(b, a));
108  BOOST_CHECK(cerge(b, a));
109
110  BOOST_CHECK(poslt(a, b));
111  BOOST_CHECK(posle(a, b));
112  BOOST_CHECK(!posgt(a, b));
113  BOOST_CHECK(posge(a, b));
114
115  BOOST_CHECK(!poslt(b, a));
116  BOOST_CHECK(posle(b, a));
117  BOOST_CHECK(posgt(b, a));
118  BOOST_CHECK(posge(b, a));
119
120  BOOST_CHECK(!cereq(a, b));
121  BOOST_CHECK(!cerne(a, b));
122  BOOST_CHECK(poseq(a, b));
123  BOOST_CHECK(posne(a, b));
124
125  BOOST_CHECK(!cereq(b, a));
126  BOOST_CHECK(!cerne(b, a));
127  BOOST_CHECK(poseq(b, a));
128  BOOST_CHECK(posne(b, a));
129
130# ifdef __BORLANDC__
131  ::detail::ignore_unused_variable_warning(a);
132  ::detail::ignore_unused_variable_warning(b);
133# endif
134}
135
136// comparisons between [1,2] and 0
137
138static void test_12_0() {
139  const I a(1,2);
140  const int b = 0;
141
142  BOOST_CHECK(!cerlt(a, b));
143  BOOST_CHECK(!cerle(a, b));
144  BOOST_CHECK(cergt(a, b));
145  BOOST_CHECK(cerge(a, b));
146
147  BOOST_CHECK(cerlt(b, a));
148  BOOST_CHECK(cerle(b, a));
149  BOOST_CHECK(!cergt(b, a));
150  BOOST_CHECK(!cerge(b, a));
151
152  BOOST_CHECK(!poslt(a, b));
153  BOOST_CHECK(!posle(a, b));
154  BOOST_CHECK(posgt(a, b));
155  BOOST_CHECK(posge(a, b));
156
157  BOOST_CHECK(poslt(b, a));
158  BOOST_CHECK(posle(b, a));
159  BOOST_CHECK(!posgt(b, a));
160  BOOST_CHECK(!posge(b, a));
161
162  BOOST_CHECK(!cereq(a, b));
163  BOOST_CHECK(cerne(a, b));
164  BOOST_CHECK(!poseq(a, b));
165  BOOST_CHECK(posne(a, b));
166
167  BOOST_CHECK(!cereq(b, a));
168  BOOST_CHECK(cerne(b, a));
169  BOOST_CHECK(!poseq(b, a));
170  BOOST_CHECK(posne(b, a));
171
172# ifdef __BORLANDC__
173  ::detail::ignore_unused_variable_warning(a);
174  ::detail::ignore_unused_variable_warning(b);
175# endif
176}
177
178// comparisons between [1,2] and 1
179
180static void test_12_1() {
181  const I a(1,2);
182  const int b = 1;
183
184  BOOST_CHECK(!cerlt(a, b));
185  BOOST_CHECK(!cerle(a, b));
186  BOOST_CHECK(!cergt(a, b));
187  BOOST_CHECK(cerge(a, b));
188
189  BOOST_CHECK(!cerlt(b, a));
190  BOOST_CHECK(cerle(b, a));
191  BOOST_CHECK(!cergt(b, a));
192  BOOST_CHECK(!cerge(b, a));
193
194  BOOST_CHECK(!poslt(a, b));
195  BOOST_CHECK(posle(a, b));
196  BOOST_CHECK(posgt(a, b));
197  BOOST_CHECK(posge(a, b));
198
199  BOOST_CHECK(poslt(b, a));
200  BOOST_CHECK(posle(b, a));
201  BOOST_CHECK(!posgt(b, a));
202  BOOST_CHECK(posge(b, a));
203
204  BOOST_CHECK(!cereq(a, b));
205  BOOST_CHECK(!cerne(a, b));
206  BOOST_CHECK(poseq(a, b));
207  BOOST_CHECK(posne(a, b));
208
209  BOOST_CHECK(!cereq(b, a));
210  BOOST_CHECK(!cerne(b, a));
211  BOOST_CHECK(poseq(b, a));
212  BOOST_CHECK(posne(b, a));
213
214# ifdef __BORLANDC__
215  ::detail::ignore_unused_variable_warning(a);
216  ::detail::ignore_unused_variable_warning(b);
217# endif
218}
219
220// comparisons between [1,2] and 2
221
222static void test_12_2() {
223  const I a(1,2);
224  const int b = 2;
225
226  BOOST_CHECK(!cerlt(a, b));
227  BOOST_CHECK(cerle(a, b));
228  BOOST_CHECK(!cergt(a, b));
229  BOOST_CHECK(!cerge(a, b));
230
231  BOOST_CHECK(!cerlt(b, a));
232  BOOST_CHECK(!cerle(b, a));
233  BOOST_CHECK(!cergt(b, a));
234  BOOST_CHECK(cerge(b, a));
235
236  BOOST_CHECK(poslt(a, b));
237  BOOST_CHECK(posle(a, b));
238  BOOST_CHECK(!posgt(a, b));
239  BOOST_CHECK(posge(a, b));
240
241  BOOST_CHECK(!poslt(b, a));
242  BOOST_CHECK(posle(b, a));
243  BOOST_CHECK(posgt(b, a));
244  BOOST_CHECK(posge(b, a));
245
246  BOOST_CHECK(!cereq(a, b));
247  BOOST_CHECK(!cerne(a, b));
248  BOOST_CHECK(poseq(a, b));
249  BOOST_CHECK(posne(a, b));
250
251  BOOST_CHECK(!cereq(b, a));
252  BOOST_CHECK(!cerne(b, a));
253  BOOST_CHECK(poseq(b, a));
254  BOOST_CHECK(posne(b, a));
255
256# ifdef __BORLANDC__
257  ::detail::ignore_unused_variable_warning(a);
258  ::detail::ignore_unused_variable_warning(b);
259# endif
260}
261
262// comparisons between [1,2] and 3
263
264static void test_12_3() {
265  const I a(1,2);
266  const int b = 3;
267
268  BOOST_CHECK(cerlt(a, b));
269  BOOST_CHECK(cerle(a, b));
270  BOOST_CHECK(!cergt(a, b));
271  BOOST_CHECK(!cerge(a, b));
272
273  BOOST_CHECK(!cerlt(b, a));
274  BOOST_CHECK(!cerle(b, a));
275  BOOST_CHECK(cergt(b, a));
276  BOOST_CHECK(cerge(b, a));
277
278  BOOST_CHECK(poslt(a, b));
279  BOOST_CHECK(posle(a, b));
280  BOOST_CHECK(!posgt(a, b));
281  BOOST_CHECK(!posge(a, b));
282
283  BOOST_CHECK(!poslt(b, a));
284  BOOST_CHECK(!posle(b, a));
285  BOOST_CHECK(posgt(b, a));
286  BOOST_CHECK(posge(b, a));
287
288  BOOST_CHECK(!cereq(a, b));
289  BOOST_CHECK(cerne(a, b));
290  BOOST_CHECK(!poseq(a, b));
291  BOOST_CHECK(posne(a, b));
292
293  BOOST_CHECK(!cereq(b, a));
294  BOOST_CHECK(cerne(b, a));
295  BOOST_CHECK(!poseq(b, a));
296  BOOST_CHECK(posne(b, a));
297
298# ifdef __BORLANDC__
299  ::detail::ignore_unused_variable_warning(a);
300  ::detail::ignore_unused_variable_warning(b);
301# endif
302}
303
304static void test_12_12() {
305  const I a(1,2), b(1,2);
306  BOOST_CHECK(!cereq(a, b));
307  BOOST_CHECK(!cerne(a, b));
308  BOOST_CHECK(poseq(a, b));
309  BOOST_CHECK(posne(a, b));
310  BOOST_CHECK(!cereq(b, a));
311  BOOST_CHECK(!cerne(b, a));
312  BOOST_CHECK(poseq(b, a));
313  BOOST_CHECK(posne(b, a));
314# ifdef __BORLANDC__
315  ::detail::ignore_unused_variable_warning(a);
316  ::detail::ignore_unused_variable_warning(b);
317# endif
318}
319
320static void test_11_11() {
321  const I a(1,1), b(1,1);
322  BOOST_CHECK(cereq(a, b));
323  BOOST_CHECK(!cerne(a, b));
324  BOOST_CHECK(poseq(a, b));
325  BOOST_CHECK(!posne(a, b));
326  BOOST_CHECK(cereq(b, a));
327  BOOST_CHECK(!cerne(b, a));
328  BOOST_CHECK(poseq(b, a));
329  BOOST_CHECK(!posne(b, a));
330# ifdef __BORLANDC__
331  ::detail::ignore_unused_variable_warning(a);
332  ::detail::ignore_unused_variable_warning(b);
333# endif
334}
335
336static void test_11_1() {
337  const I a(1,1);
338  const int b = 1;
339  BOOST_CHECK(cereq(a, b));
340  BOOST_CHECK(!cerne(a, b));
341  BOOST_CHECK(poseq(a, b));
342  BOOST_CHECK(!posne(a, b));
343  BOOST_CHECK(cereq(b, a));
344  BOOST_CHECK(!cerne(b, a));
345  BOOST_CHECK(poseq(b, a));
346  BOOST_CHECK(!posne(b, a));
347# ifdef __BORLANDC__
348  ::detail::ignore_unused_variable_warning(a);
349  ::detail::ignore_unused_variable_warning(b);
350# endif
351}
352
353int test_main(int, char *[]) {
354  test_12_34();
355  test_13_24();
356  test_12_23();
357  test_12_0();
358  test_12_1();
359  test_12_2();
360  test_12_3();
361  test_12_12();
362  test_11_11();
363  test_11_1();
364
365  return 0;
366}
Note: See TracBrowser for help on using the repository browser.