From 6fb180c34bfa5bc9c12e975780850990db792d1f Mon Sep 17 00:00:00 2001 From: Bastian Dehn Date: Sat, 2 Mar 2024 19:53:43 +0100 Subject: [PATCH] add empty config test --- src/kds_s2000w_config.c | 5 +++++ tests/kds_s2000w_read_config_tests.c | 14 ++++++++++++++ tests/runtests.c | 1 + 3 files changed, 20 insertions(+) diff --git a/src/kds_s2000w_config.c b/src/kds_s2000w_config.c index cd691a8..5fb92ce 100644 --- a/src/kds_s2000w_config.c +++ b/src/kds_s2000w_config.c @@ -139,6 +139,11 @@ void get_value(config_line* line, config_value* value) void loadConfig(program_config* config, const char* config_stream) { + config->scanner_url = NULL; + if (strlen(config_stream) == 0) { + return; + } + config_line line; line.length = 0; line.line = NULL; diff --git a/tests/kds_s2000w_read_config_tests.c b/tests/kds_s2000w_read_config_tests.c index 7ad0d12..bf34800 100644 --- a/tests/kds_s2000w_read_config_tests.c +++ b/tests/kds_s2000w_read_config_tests.c @@ -15,4 +15,18 @@ START_TEST(kds_s2000w_config_read_parameter) free(config); config = NULL; } +END_TEST + +START_TEST(kds_s2000w_config_read_empty_config) +{ + const char* input_stream = ""; + + program_config* config = malloc(sizeof(program_config)); + loadConfig(config, input_stream); + + ck_assert_ptr_null(config->scanner_url); + + free(config); + config = NULL; +} END_TEST \ No newline at end of file diff --git a/tests/runtests.c b/tests/runtests.c index dd11d83..2e79947 100644 --- a/tests/runtests.c +++ b/tests/runtests.c @@ -51,6 +51,7 @@ Suite* config_read() Suite* read_config = suite_create("kds_s2000w_net_read_config"); TCase* net_config_read = tcase_create("read config"); + tcase_add_test(net_config_read, kds_s2000w_config_read_empty_config); tcase_add_test(net_config_read, kds_s2000w_config_read_parameter); suite_add_tcase(read_config, net_config_read); -- 2.39.5