From 8a4bcc6fea9c2863bedf1b828aa8247e4a86a722 Mon Sep 17 00:00:00 2001 From: andy5995 Date: Wed, 28 Feb 2024 13:41:56 -0600 Subject: [PATCH] tests: Some cleanup --- example.c | 11 ++++++++++- meson.build | 4 +++- tests/colons.c | 4 +--- tests/file_open_err.c | 8 +------- tests/german.c | 5 +---- tests/multiple_attributes.c | 8 +------- tests/unicode.c | 8 +------- 7 files changed, 18 insertions(+), 30 deletions(-) diff --git a/example.c b/example.c index 2e6f1f7..5c18fa7 100644 --- a/example.c +++ b/example.c @@ -1,11 +1,12 @@ #include +#include "test.h" // Used for canfigger test, not normally needed #include "canfigger.h" int main(int argc, char *argv[]) { - char *default_filename = "../examplerc"; + char *default_filename = SOURCE_DIR "/examplerc"; char *filename_ptr = default_filename; if (argc == 2) @@ -31,6 +32,9 @@ main(int argc, char *argv[]) if (!config) return -1; + // i is only used for testing + int i = 0; + while (config != NULL) { // @@ -60,7 +64,12 @@ main(int argc, char *argv[]) // Move to the next node and automatically free the current node canfigger_free_current_key_node_advance(&config); putchar('\n'); + + i++; } + // This should be the number of keys in the example config + assert(i == 6); + return 0; } diff --git a/meson.build b/meson.build index dc2d598..e1e9572 100644 --- a/meson.build +++ b/meson.build @@ -69,7 +69,9 @@ if get_option('build_examples') example = executable( 'example', 'example.c', - dependencies: canfigger_dep + dependencies: canfigger_dep, + include_directories: 'tests', + c_args: '-DSOURCE_DIR="@0@"'.format(meson.current_source_dir()) ) endif diff --git a/tests/colons.c b/tests/colons.c index ad92b5a..7fea23e 100644 --- a/tests/colons.c +++ b/tests/colons.c @@ -14,9 +14,7 @@ main(void) {"statement", "hello world", "obvious"}, }; - char test_config_file[PATH_MAX]; - sprintf(test_config_file, "%s/test_canfigger_colons.conf", SOURCE_DIR); - struct Canfigger *list = canfigger_parse_file(test_config_file, ':'); + struct Canfigger *list = canfigger_parse_file(SOURCE_DIR "/test_canfigger_colons.conf", ':'); assert (list); int i = 0; diff --git a/tests/file_open_err.c b/tests/file_open_err.c index ea54cf1..8a723fa 100644 --- a/tests/file_open_err.c +++ b/tests/file_open_err.c @@ -3,13 +3,7 @@ int main(void) { - char test_config_file[PATH_MAX]; - assert((size_t) - snprintf(test_config_file, sizeof test_config_file, - "%s/no_exist_test_canfigger.conf", - SOURCE_DIR) < sizeof test_config_file); - - struct Canfigger *list = canfigger_parse_file(test_config_file, ','); + struct Canfigger *list = canfigger_parse_file("foo", ','); assert(list == NULL); assert(errno); perror(__func__); diff --git a/tests/german.c b/tests/german.c index f46cfc5..52a9d9d 100644 --- a/tests/german.c +++ b/tests/german.c @@ -11,10 +11,7 @@ int main(void) { const char *data3[] = {"zweite", "nach eins"}; const char *data4[] = {"ßchar", "Füße", "Gänsefüßchen", "über", "Änderung"}; - char test_config_file[PATH_MAX]; - assert((size_t)snprintf(test_config_file, sizeof test_config_file, "%s/german.conf", SOURCE_DIR) < sizeof test_config_file); - - struct Canfigger *list = canfigger_parse_file(test_config_file, ','); + struct Canfigger *list = canfigger_parse_file(SOURCE_DIR "/german.conf", ','); assert (list); int i = 0; diff --git a/tests/multiple_attributes.c b/tests/multiple_attributes.c index b355299..1a59499 100644 --- a/tests/multiple_attributes.c +++ b/tests/multiple_attributes.c @@ -16,14 +16,8 @@ main(void) "after one", }; - char test_config_file[PATH_MAX]; - assert((size_t) - snprintf(test_config_file, sizeof test_config_file, - "%s/multiple_attributes.conf", - SOURCE_DIR) < sizeof test_config_file); - // call the primary library function to read your config file - struct Canfigger *list = canfigger_parse_file(test_config_file, ','); + struct Canfigger *list = canfigger_parse_file(SOURCE_DIR "/multiple_attributes.conf", ','); assert (list); int i = 0; diff --git a/tests/unicode.c b/tests/unicode.c index bc0ed1a..ac01a53 100644 --- a/tests/unicode.c +++ b/tests/unicode.c @@ -16,14 +16,8 @@ main(void) "Some cartoon characters will be very unhappy."}, }; - char test_config_file[PATH_MAX]; - assert((size_t) - snprintf(test_config_file, sizeof test_config_file, - "%s/test_unicode.conf", - SOURCE_DIR) < sizeof test_config_file); - // call the primary library function to read your config file - struct Canfigger *list = canfigger_parse_file(test_config_file, ';'); + struct Canfigger *list = canfigger_parse_file(SOURCE_DIR "/test_unicode.conf", ';'); assert (list); int i = 0;