diff options
| author | Marc André Tanner <mat@brain-dump.org> | 2016-12-21 16:56:05 +0100 |
|---|---|---|
| committer | Marc André Tanner <mat@brain-dump.org> | 2016-12-21 16:56:05 +0100 |
| commit | cca3d303023d53b5d0af96751f379b2d0e28cd18 (patch) | |
| tree | abc9d454a06e9902d4424cebefce0564d864dd0f /core/array.c | |
| parent | 869152604e454582a5e4a0908d4e7c88125c4e5b (diff) | |
| download | vis-cca3d303023d53b5d0af96751f379b2d0e28cd18.tar.gz vis-cca3d303023d53b5d0af96751f379b2d0e28cd18.tar.xz | |
test/core: make core tests asan clean
Diffstat (limited to 'core/array.c')
| -rw-r--r-- | core/array.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/core/array.c b/core/array.c index ced8e26..e6c0265 100644 --- a/core/array.c +++ b/core/array.c @@ -48,6 +48,8 @@ static void test_small_objects(void) { array_clear(&arr); ok(array_length(&arr) == 0 && array_get(&arr, 0) == NULL && errno == EINVAL, "Clear"); + + array_release(&arr); } static void test_large_objects(void) { @@ -87,6 +89,8 @@ static void test_large_objects(void) { array_clear(&arr); ok(array_length(&arr) == 0 && array_get(&arr, 0) == NULL && errno == EINVAL, "Clear"); + + array_release(&arr); } static void test_pointers(void) { @@ -100,9 +104,11 @@ static void test_pointers(void) { for (size_t i = 0; i < len; i++) { items[i] = malloc(sizeof(Item)); - snprintf(items[i]->key, sizeof(items[i]->key), "key: %zu", i); items[i]->value = values[i]; + } + + for (size_t i = 0; i < len; i++) { Item *item; ok(array_add_ptr(&arr, items[i]) && array_length(&arr) == i+1, "Add item: %zu = %p", i, (void*)items[i]); @@ -124,6 +130,12 @@ static void test_pointers(void) { array_clear(&arr); ok(array_length(&arr) == 0 && array_get_ptr(&arr, 0) == NULL && errno == EINVAL, "Clear"); + + for (size_t i = 0; i < len; i++) { + ok(array_add_ptr(&arr, items[i]) && array_length(&arr) == i+1, + "Re-add item: %zu = %p", i, (void*)items[i]); + } + array_release_full(&arr); } int main(int argc, char *argv[]) { |
