MCPcopy Create free account
hub / github.com/DanielChappuis/reactphysics3d / testIterators

Method testIterators

test/tests/containers/TestDeque.h:274–332  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

272 }
273
274 void testIterators() {
275
276 Deque<int> deque1(mAllocator);
277
278 rp3d_test(deque1.begin() == deque1.end());
279
280 deque1.addBack(5);
281 deque1.addBack(6);
282 deque1.addBack(8);
283 deque1.addBack(-1);
284
285 Deque<int>::Iterator itBegin = deque1.begin();
286 Deque<int>::Iterator itEnd = deque1.end();
287 Deque<int>::Iterator it = deque1.begin();
288
289 rp3d_test(itBegin < itEnd);
290 rp3d_test(itBegin <= itEnd);
291 rp3d_test(itEnd > itBegin);
292 rp3d_test(itEnd >= itBegin);
293
294 rp3d_test(itBegin == it);
295 rp3d_test(*it == 5);
296 rp3d_test(*(it++) == 5);
297 rp3d_test(*it == 6);
298 rp3d_test(*(it--) == 6);
299 rp3d_test(*it == 5);
300 rp3d_test(*(++it) == 6);
301 rp3d_test(*it == 6);
302 rp3d_test(*(--it) == 5);
303 rp3d_test(*it == 5);
304 rp3d_test(it == itBegin);
305
306 it = deque1.end();
307 rp3d_test(it == itEnd);
308 it--;
309 rp3d_test(*it == -1);
310 it++;
311 rp3d_test(it == itEnd);
312
313 Deque<int> deque2(mAllocator);
314 for (auto it = deque1.begin(); it != deque1.end(); ++it) {
315 deque2.addBack(*it);
316 }
317
318 rp3d_test(deque1 == deque2);
319
320 it = itBegin;
321 rp3d_test(*(it + 2) == 8);
322 it += 2;
323 rp3d_test(*it == 8);
324 rp3d_test(*(it - 2) == 5);
325 it -= 2;
326 rp3d_test(*it == 5);
327 rp3d_test((itEnd - itBegin) == 4);
328
329 it = itBegin;
330 *it = 19;
331 rp3d_test(*it == 19);

Callers

nothing calls this directly

Calls 3

addBackMethod · 0.80
beginMethod · 0.45
endMethod · 0.45

Tested by

no test coverage detected