38 using LERR_(ITER_EXHAUST);
43 const uint NUM_ELMS = 10;
45 using Numz = vector<uint>;
53 for (uint i=0; i<NUM_ELMS; ++i)
90 Numz numz{makeNumz()};
91 Iter i1{numz.begin(), numz.end()};
97 for (uint i=*i1 ; i1; ++i1, ++i)
106 uint n = numz.size() - 1;
107 CHECK (sum == n*(n+1) / 2);
114 CHECK (join(i4,
"-+-") ==
"1-+-2-+-3-+-4-+-5-+-6-+-7-+-8-+-9-+-10");
130 Numz numz{makeNumz()};
136 CHECK (!isnil(
iter));
137 CHECK (join(
iter) ==
"4, 5, 6, 7, 8, 9");
142 CHECK (!isnil(
iter));
145 CHECK (!isnil(
iter));
146 CHECK (join(
iter) ==
"3, 2, 1, 0");
153 CHECK (!isnil(
iter));
157 CHECK (!isnil(
iter));
164 CHECK (!isnil(
iter));
172 CHECK (!isnil(
iter));
181 CHECK (!isnil(
iter));
200 Numz numz{makeNumz()};
201 Numz
const& const_numz{numz};
204 for (Iter
iter{numz};
209 CHECK (
iter != Iter());
212 CHECK (*
iter == i-1);
216 for (CIter
iter{const_numz};
221 CHECK (
iter != CIter());
222 CHECK (*
iter == i-1);
254 CHECK (i1 == i2); CHECK (i2 == i1);
255 CHECK (i1 != iN); CHECK (iN != i1);
256 CHECK (i2 != iN); CHECK (iN != i2);
#define VERIFY_ERROR(ERROR_ID, ERRONEOUS_STATEMENT)
Macro to verify that a statement indeed raises an exception.
An iterator with the ability to switch direction.
void iterTypeVariations()
Implementation namespace for support and library code.
Simplistic test class runner.
Tiny helper functions and shortcuts to be used everywhere Consider this header to be effectively incl...
A collection of frequently used helper functions to support unit testing.
A cursor-like iterator with the ability to switch iteration direction.
void verifyComparisons(IT const &ii)