/* * Copyright (C) 2025 Johnny Richard * * SPDX-License-Identifier: LGPL-3.0-or-later * * This file is part of obe. * * obe is free software: you can redistribute it and/or modify it under the * terms of the GNU Lesser General Public License as published by the Free * Software Foundation, either version 3 of the License, or (at your option) * any later version. * * obe is distributed in the hope that it will be useful, but WITHOUT ANY * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more * details. * * You should have received a copy of the GNU Lesser General Public License * along with obe. If not, see . */ #include #include #include #include static obe_arena_t arena = { 0 }; void setup(void) { } void teardown(void) { obe_arena_release(&arena); } START_TEST(obe_array_append) { int* arr = obe_array(&arena, int); obe_array_append(arr, 1); obe_array_append(arr, 2); obe_array_append(arr, 3); obe_array_append(arr, 4); obe_array_append(arr, 5); ck_assert_int_eq(obe_array_length(arr), 5); } END_TEST Suite* array_suite(void) { Suite* s; TCase* tc_append; s = suite_create("Array"); tc_append = tcase_create("tc_append"); tcase_add_checked_fixture(tc_append, setup, teardown); tcase_add_test(tc_append, obe_array_append); suite_add_tcase(s, tc_append); return s; } int main(void) { int number_failed; Suite* s; SRunner* sr; s = array_suite(); sr = srunner_create(s); srunner_run_all(sr, CK_NORMAL); number_failed = srunner_ntests_failed(sr); srunner_free(sr); return (number_failed == 0) ? EXIT_SUCCESS : EXIT_FAILURE; }