From f8bf87face3304f216bcd838081fa33bb4976ac6 Mon Sep 17 00:00:00 2001 From: Florian Weimer Date: Tue, 13 Jun 2017 17:03:56 +0200 Subject: dynarray: Implement begin/end functions in the spirit of C++ --- malloc/tst-dynarray.c | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'malloc/tst-dynarray.c') diff --git a/malloc/tst-dynarray.c b/malloc/tst-dynarray.c index 7aee85aa39..2206d75e31 100644 --- a/malloc/tst-dynarray.c +++ b/malloc/tst-dynarray.c @@ -111,6 +111,13 @@ test_int (void) } TEST_VERIFY_EXIT (dynarray_int_size (&dyn) == count); TEST_VERIFY_EXIT (count <= dyn.dynarray_header.allocated); + if (count > 0) + { + TEST_VERIFY (dynarray_int_begin (&dyn) + == dynarray_int_at (&dyn, 0)); + TEST_VERIFY (dynarray_int_end (&dyn) + == dynarray_int_at (&dyn, count - 1) + 1); + } unsigned final_count; bool heap_array = dyn.dynarray_header.array != dyn.scratch; if (do_remove_last) @@ -123,6 +130,13 @@ test_int (void) } else final_count = count; + if (final_count > 0) + { + TEST_VERIFY (dynarray_int_begin (&dyn) + == dynarray_int_at (&dyn, 0)); + TEST_VERIFY (dynarray_int_end (&dyn) + == dynarray_int_at (&dyn, final_count - 1) + 1); + } if (do_clear) { dynarray_int_clear (&dyn); @@ -225,6 +239,13 @@ test_str (void) } TEST_VERIFY_EXIT (dynarray_str_size (&dyn) == count); TEST_VERIFY_EXIT (count <= dyn.dynarray_header.allocated); + if (count > 0) + { + TEST_VERIFY (dynarray_str_begin (&dyn) + == dynarray_str_at (&dyn, 0)); + TEST_VERIFY (dynarray_str_end (&dyn) + == dynarray_str_at (&dyn, count - 1) + 1); + } unsigned final_count; bool heap_array = dyn.dynarray_header.array != dyn.scratch; if (do_remove_last) @@ -237,6 +258,13 @@ test_str (void) } else final_count = count; + if (final_count > 0) + { + TEST_VERIFY (dynarray_str_begin (&dyn) + == dynarray_str_at (&dyn, 0)); + TEST_VERIFY (dynarray_str_end (&dyn) + == dynarray_str_at (&dyn, final_count - 1) + 1); + } if (do_clear) { dynarray_str_clear (&dyn); -- cgit v1.2.3