diff -r c09da4ee177f -r 320b962afaf9 test/array_tests.c --- a/test/array_tests.c Wed Aug 07 19:43:50 2019 +0200 +++ b/test/array_tests.c Wed Aug 07 20:45:21 2019 +0200 @@ -257,6 +257,30 @@ ucx_array_free(&a2); } +UCX_TEST(test_ucx_array_at) { + UcxArray array = ucx_array_new(16, sizeof(int)); + + int x = 42; + ucx_array_append(&array, &x); + x = 13; + ucx_array_append(&array, &x); + x = 5; + ucx_array_append(&array, &x); + + UCX_TEST_BEGIN + + UCX_TEST_ASSERT(*(int*)ucx_array_at(array, 1) == 13, "failed"); + *(int*)ucx_array_at(array, 1) = 80; + UCX_TEST_ASSERT(*(int*)ucx_array_at(array, 1) == 80, "assignment failed"); + + UCX_TEST_ASSERT(*(int*)ucx_array_at(array, 0) == 42, "corrupted data"); + UCX_TEST_ASSERT(*(int*)ucx_array_at(array, 2) == 5, "corrupted data"); + + UCX_TEST_END + + ucx_array_free(&array); +} + UCX_TEST(test_ucx_array_find) { UcxArray array = ucx_array_new(16, sizeof(int)); int *elems;