diff --git a/test/test_arena.c b/test/test_arena.c index 873671f..e7eae4c 100644 --- a/test/test_arena.c +++ b/test/test_arena.c @@ -108,6 +108,20 @@ static void test_arena_alloc_size_max(void **state) { arena_destroy(&arena); } +static void test_arena_align_size_0(void **state) { + (void) state; + + ArenaResult value = arena_init(64); + assert_true(value.is_valid); + Arena arena = value.arena; + + ArenaPointer pointer = arena_alloc(&arena, sizeof(int), 0); + assert_false(pointer.is_valid); + assert_int_equal(pointer.err, ARENA_INVALID_ALIGN); + + arena_destroy(&arena); +} + int main(void) { const struct CMUnitTest tests[] = { cmocka_unit_test(test_push_3_ints), @@ -115,6 +129,7 @@ int main(void) { cmocka_unit_test(test_init_arena_0_cap), cmocka_unit_test(test_arena_alloc_size_0), cmocka_unit_test(test_arena_alloc_size_max), + cmocka_unit_test(test_arena_align_size_0), };