From: Bastian Dehn Date: Wed, 1 Jan 2025 19:29:47 +0000 (+0100) Subject: change config load return alloc config X-Git-Tag: v1.0.22^2~5 X-Git-Url: https://gitweb.hhaalo.de/?a=commitdiff_plain;h=96454960e09cb3dc228755c291c4b9c8f0af1507;p=sane-kds-s2000w-net.git change config load return alloc config --- diff --git a/CMakeLists.txt b/CMakeLists.txt index cba6067..259c257 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -34,7 +34,6 @@ IF (RUN_TESTS) --wrap,kds_s2000w_client_set_option,\ --wrap,kds_s2000w_client_init,\ --wrap,kds_s2000w_client_free,\ ---wrap,load_config,\ --wrap,wait_a_second,\ --wrap,usleep" CACHE STRING "test coverage compiler flags" FORCE) ENDIF() diff --git a/src/kds_s2000w_client.c b/src/kds_s2000w_client.c index 8ab2f82..4afca9d 100644 --- a/src/kds_s2000w_client.c +++ b/src/kds_s2000w_client.c @@ -46,8 +46,7 @@ void _kds_s2000w_client_load_config() if (config_stream == NULL) return; - config = malloc(sizeof(program_config)); - load_config(config, config_stream); + config = load_config(config_stream); free(config_stream); config_stream = NULL; diff --git a/src/kds_s2000w_config.c b/src/kds_s2000w_config.c index b979648..9408e4f 100644 --- a/src/kds_s2000w_config.c +++ b/src/kds_s2000w_config.c @@ -42,8 +42,9 @@ char* read_config_file(const char* filename) return config_stream; } -void load_config(program_config* config, const char* config_stream) +program_config* load_config(const char* config_stream) { + program_config* config = malloc(sizeof(program_config)); config->scanner_url = NULL; config->username = NULL; config->heartbeat = 1; @@ -54,7 +55,7 @@ void load_config(program_config* config, const char* config_stream) size_t str_length = 0; if (strlen(config_stream) <= 0) - return; + return config; cfg_opt_t opts[] = { CFG_STR("username", "", CFGF_NONE), @@ -86,4 +87,6 @@ void load_config(program_config* config, const char* config_stream) cfg_free(cfg); cfg = NULL; + + return config; } \ No newline at end of file diff --git a/src/kds_s2000w_config.h b/src/kds_s2000w_config.h index d56557e..a739b54 100644 --- a/src/kds_s2000w_config.h +++ b/src/kds_s2000w_config.h @@ -10,5 +10,5 @@ typedef struct { void free_config(program_config* config); char* read_config_file(const char* filename); -void load_config(program_config* config, const char* config_stream); +program_config* load_config(const char* config_stream); #endif \ No newline at end of file diff --git a/tests/kds_s2000w_read_config_tests.c b/tests/kds_s2000w_read_config_tests.c index dfa7084..602c295 100644 --- a/tests/kds_s2000w_read_config_tests.c +++ b/tests/kds_s2000w_read_config_tests.c @@ -6,13 +6,6 @@ #include "../src/kds_s2000w_config.h" #include "../src/kds_s2000w_image_converter.h" -extern typeof (load_config) __real_load_config; - -void __wrap_load_config(program_config* config, const char* config_stream) -{ - __real_load_config(config, config_stream); -} - void __wrap_wait_a_second() { return; @@ -22,8 +15,7 @@ void kds_s2000w_config_read_parameter() { const char* input_stream = " scanner_url = http://scanner.example.com \n"; - program_config* config = malloc(sizeof(program_config)); - load_config(config, input_stream); + program_config* config = load_config(input_stream); assert_string_equal(config->scanner_url, "http://scanner.example.com"); @@ -39,8 +31,7 @@ void kds_s2000w_config_read_parameters_without_trim() { const char* input_stream = "scanner_url=http://scanner.example.com\n"; - program_config* config = malloc(sizeof(program_config)); - load_config(config, input_stream); + program_config* config = load_config(input_stream); assert_string_equal(config->scanner_url, "http://scanner.example.com"); @@ -56,8 +47,7 @@ void kds_s2000w_config_multiple_parameters() { const char* input_stream = "scanner_url=http://scanner.example.com\nusername=Mustermann\n"; - program_config* config = malloc(sizeof(program_config)); - load_config(config, input_stream); + program_config* config = load_config(input_stream); assert_string_equal(config->scanner_url, "http://scanner.example.com"); assert_string_equal(config->username, "Mustermann"); @@ -74,8 +64,7 @@ void kds_s2000w_config_read_empty_config() { const char* input_stream = ""; - program_config* config = malloc(sizeof(program_config)); - load_config(config, input_stream); + program_config* config = load_config(input_stream); assert_null(config->scanner_url); @@ -91,8 +80,7 @@ void kds_s200w_config_default_heartbeat() { const char* input_stream = ""; - program_config* config = malloc(sizeof(program_config)); - load_config(config, input_stream); + program_config* config = load_config(input_stream); assert_int_equal(config->heartbeat, 1); @@ -104,8 +92,7 @@ void kds_s200w_config_default_heartbeat_five_seconds() { const char* input_stream = "heartbeat_seconds = 5\n"; - program_config* config = malloc(sizeof(program_config)); - load_config(config, input_stream); + program_config* config = load_config(input_stream); assert_int_equal(config->heartbeat, 5); @@ -121,8 +108,7 @@ void kds_s200w_config_default_heartbeat_zero_set_default() { const char* input_stream = "heartbeat_seconds = 0\n"; - program_config* config = malloc(sizeof(program_config)); - load_config(config, input_stream); + program_config* config = load_config(input_stream); assert_int_equal(config->heartbeat, 1);