]> gitweb.hhaalo.de Git - sane-kds-s2000w-net.git/commitdiff
add profile in config
authorBastian Dehn <hhaalo@arcor.de>
Tue, 23 Sep 2025 07:21:57 +0000 (09:21 +0200)
committerBastian Dehn <hhaalo@arcor.de>
Tue, 23 Sep 2025 07:21:57 +0000 (09:21 +0200)
src/kds_s2000w_config.c
src/kds_s2000w_config.h
tests/kds_s2000w_read_config_tests.c
tests/kds_s2000w_read_config_tests.h
tests/kds_s2000w_read_config_tests_run.c

index 9abfb20d68ef515ecaf6241f3fb5193a97e769b4..4ec79206e03bb5de74775e4087eef1e9ab5072b6 100644 (file)
@@ -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;
index fc8ea67378b07329eeff35af72cfdc3e93cd204c..935dcfb163386307300d952f5f3a5b972d5e950b 100644 (file)
@@ -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
index 23dc8f8ccca12bea28d342418b3d32b25883b181..b81843b97c41d45f09434fb55abf73d80edbdabf 100644 (file)
@@ -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
index 8e6660db12b5b4defcbc826715f44200fe0f97a6..1ab694686cdef911f7b9c53b00b56e5affd3f0aa 100644 (file)
@@ -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
index ca76498ce4a3b5cd92b3e6a561a2870366cb4be7..5a31e321f1fa11eb807d88f0e6f677f3933a0faa 100644 (file)
@@ -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);