/* * test_w1.cc * * Created on: Oct 20, 2010 * Author: lamikr */ #include #include #include #include #include "../src/config.h" #define CONF_FILENAME "dev_cfg_txt" #define SECTION_TYPE "mysection_type" #define SECTION_TYPE2 "mysection_type2" #define SECTION_NAME "mysection_name" #define SECTION_NAME2 "mysection_name2" #define KEY_NAME "key_name" #define KEY_NAME2 "key_name2" #define KEY_NAME3 "key_name3" #define KEY_NAME_INVALID_READ "key_name_invalid" #define VALUE1 "val1" #define VALUE2 "val2" #define VALUE3 "val3" #define VALUE4 "val4" int test_config() { char work_dir[FILENAME_MAX]; char *val; getcwd(work_dir, sizeof(work_dir)); printf("working directory: %s\n", work_dir); set_config_value_and_save(work_dir, CONF_FILENAME, SECTION_TYPE, SECTION_NAME, KEY_NAME, VALUE1); val = get_config_value_and_close(work_dir, CONF_FILENAME, SECTION_NAME, KEY_NAME); if ((val != NULL) && (strcmp(val, VALUE1) == 0)) { printf("value 1 read ok: %s\n", val); free(val); } else { printf("failed to read value\n"); return 1; } val = get_config_value_and_close(work_dir, CONF_FILENAME, SECTION_NAME, KEY_NAME_INVALID_READ); if ((val != NULL) && (strcmp(val, VALUE1) == 0)) { printf("pl, should not be possible to read invalid key value.\n"); return 0; } else { printf("error, value was supposed to be NULL, but is: %s\n", val); } set_config_value_and_save(work_dir, CONF_FILENAME, SECTION_TYPE, SECTION_NAME, KEY_NAME, VALUE2); set_config_value_and_save(work_dir, CONF_FILENAME, SECTION_TYPE, SECTION_NAME, KEY_NAME2, VALUE3); set_config_value_and_save(work_dir, CONF_FILENAME, SECTION_TYPE2, SECTION_NAME2, KEY_NAME3, VALUE4); return 0; } int main(int argc, char** argv) { test_config(); return 0; }