From 22283ef54b66495e2c88e0dbac9856c4a34434a6 Mon Sep 17 00:00:00 2001 From: Johnny Richard Date: Tue, 12 Apr 2022 03:33:59 +0200 Subject: Add munit testing framework support --- test/Makefile | 13 +++++++++++++ test/hash_table_test.c | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ test/munit | 1 + 3 files changed, 63 insertions(+) create mode 100644 test/Makefile create mode 100644 test/hash_table_test.c create mode 160000 test/munit (limited to 'test') diff --git a/test/Makefile b/test/Makefile new file mode 100644 index 0000000..3d86f0e --- /dev/null +++ b/test/Makefile @@ -0,0 +1,13 @@ +CC=gcc + +.PHONY: all +all: hash_table_test + +.PHONY: hash_table_test +hash_table_test: ../hash_table.o hash_table_test.c + $(CC) -o hash_table_test ../hash_table.o hash_table_test.c + ./hash_table_test + +.PHONY: clean +clean: + @$(RM) hash_table_test diff --git a/test/hash_table_test.c b/test/hash_table_test.c new file mode 100644 index 0000000..075c9d2 --- /dev/null +++ b/test/hash_table_test.c @@ -0,0 +1,49 @@ +/* + * Papo IRC Server + * Copyright (C) 2021 Johnny Richard + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program 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 Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + */ +#define MUNIT_ENABLE_ASSERT_ALIASES +#include "munit/munit.c" +#include "../hash_table.h" + +#include + +static MunitResult +test_create_new(const MunitParameter params[], + void *user_data_or_fixture) +{ + hash_table_t* table = hash_table_new(); + + assert_not_null(table); + + return MUNIT_OK; +} + +static MunitTest tests[] = { + { "/test_create_new", test_create_new, NULL, NULL, MUNIT_TEST_OPTION_NONE, NULL }, + { NULL, NULL, NULL, NULL, MUNIT_TEST_OPTION_NONE, NULL } +}; + +static const MunitSuite suite = { + "/hash_table", tests, NULL, 1, MUNIT_SUITE_OPTION_NONE +}; + +int +main(int argc, char *argv[]) +{ + return munit_suite_main(&suite, NULL, argc, argv); + return EXIT_SUCCESS; +} diff --git a/test/munit b/test/munit new file mode 160000 index 0000000..fbbdf14 --- /dev/null +++ b/test/munit @@ -0,0 +1 @@ +Subproject commit fbbdf1467eb0d04a6ee465def2e529e4c87f2118 -- cgit v1.2.3