From 49776ed80c0400e6c18dd9ed107260eabab60918 Mon Sep 17 00:00:00 2001 From: Bastian Dehn Date: Tue, 23 Sep 2025 09:21:57 +0200 Subject: [PATCH] add profile in config --- src/kds_s2000w_config.c | 4 ++++ src/kds_s2000w_config.h | 1 + tests/kds_s2000w_read_config_tests.c | 12 ++++++++++++ tests/kds_s2000w_read_config_tests.h | 1 + tests/kds_s2000w_read_config_tests_run.c | 3 ++- 5 files changed, 20 insertions(+), 1 deletion(-) diff --git a/src/kds_s2000w_config.c b/src/kds_s2000w_config.c index 9abfb20..4ec7920 100644 --- a/src/kds_s2000w_config.c +++ b/src/kds_s2000w_config.c @@ -8,6 +8,7 @@ #define DEFAULT_LOG_LEVEL "default_log_level" #define HEARTBEAT_SECONDS "heartbeat_seconds" #define SSL_VERIFY "ssl_verify" +#define PROFILE "profile" program_config* _kds_s2000w_config_init() { @@ -19,6 +20,7 @@ program_config* _kds_s2000w_config_init() config->log_level = 0; config->heartbeat = 1; config->ssl_verify = 0; + config->profile = 0; return config; } @@ -68,6 +70,7 @@ program_config* kds_s2000w_config_load(char* config_string) CFG_INT(DEFAULT_LOG_LEVEL, 0, CFGF_NONE), CFG_INT(HEARTBEAT_SECONDS, 1, CFGF_NONE), CFG_BOOL(SSL_VERIFY, 0, CFGF_NONE), + CFG_INT(PROFILE, 0, CFGF_NONE), CFG_END() }; @@ -88,6 +91,7 @@ program_config* kds_s2000w_config_load(char* config_string) config->heartbeat = 1; config->ssl_verify = cfg_getbool(cfg, SSL_VERIFY); + config->profile = cfg_getint(cfg, PROFILE); cfg_free(cfg); cfg = NULL; diff --git a/src/kds_s2000w_config.h b/src/kds_s2000w_config.h index fc8ea67..935dcfb 100644 --- a/src/kds_s2000w_config.h +++ b/src/kds_s2000w_config.h @@ -9,6 +9,7 @@ typedef struct { uint8_t log_level; uint8_t heartbeat; bool ssl_verify; + uint8_t profile; } program_config; // sanei use strdup it must be free static variable diff --git a/tests/kds_s2000w_read_config_tests.c b/tests/kds_s2000w_read_config_tests.c index 23dc8f8..b81843b 100644 --- a/tests/kds_s2000w_read_config_tests.c +++ b/tests/kds_s2000w_read_config_tests.c @@ -100,6 +100,18 @@ void kds_s2000w_config_ssl_verify_on_test() assert_true(config->ssl_verify); + kds_s2000w_config_free(config); + config = NULL; +} + +void kds_s2000w_config_profile_test() +{ + char* input_stream = "profile = 1\n"; + + program_config* config = kds_s2000w_config_load(input_stream); + + assert_int_equal(config->profile, 1); + kds_s2000w_config_free(config); config = NULL; } \ No newline at end of file diff --git a/tests/kds_s2000w_read_config_tests.h b/tests/kds_s2000w_read_config_tests.h index 8e6660d..1ab6946 100644 --- a/tests/kds_s2000w_read_config_tests.h +++ b/tests/kds_s2000w_read_config_tests.h @@ -14,5 +14,6 @@ void kds_s2000w_config_multiple_parameters_test(); void kds_s2000w_config_heartbeat_five_seconds_test(); void kds_s2000w_config_default_heartbeat_zero_set_default_test(); void kds_s2000w_config_ssl_verify_on_test(); +void kds_s2000w_config_profile_test(); #endif \ No newline at end of file diff --git a/tests/kds_s2000w_read_config_tests_run.c b/tests/kds_s2000w_read_config_tests_run.c index ca76498..5a31e32 100644 --- a/tests/kds_s2000w_read_config_tests_run.c +++ b/tests/kds_s2000w_read_config_tests_run.c @@ -10,7 +10,8 @@ int main() cmocka_unit_test(kds_s2000w_config_multiple_parameters_test), cmocka_unit_test(kds_s2000w_config_heartbeat_five_seconds_test), cmocka_unit_test(kds_s2000w_config_default_heartbeat_zero_set_default_test), - cmocka_unit_test(kds_s2000w_config_ssl_verify_on_test) + cmocka_unit_test(kds_s2000w_config_ssl_verify_on_test), + cmocka_unit_test(kds_s2000w_config_profile_test) }; return cmocka_run_group_tests(read_config, NULL, NULL); -- 2.47.3