--- libaitcfg/example/test.c 2012/04/02 14:39:02 1.1.2.3 +++ libaitcfg/example/test.c 2018/02/25 23:53:19 1.5.10.1 @@ -2,75 +2,138 @@ #include #include + int main() { - cfg_root_t lst, tmp; + cfg_root_t lst, *tmp, *tmp2; char szStr[256]; struct tagCfg *av; + ait_val_t v; + array_t *arr; + register int i; printf("LoadConfig=%d\n", cfgLoadConfig("test.conf", &lst)); printf("errno=%d error=%s\n", cfg_GetErrno(), cfg_GetError()); + + arr = cfg_getSection(&lst, "global"); + printf("arr=%p size=%d\n", arr, array_Size(arr)); + + for (i = 0; i < array_Size(arr); i++) + printf("%s\\%s=%s\n", CFG_SECTION(array_Get(arr, i)), CFG_ATTRIBUTE(array_Get(arr, i)), CFG_VALUE(array_Get(arr, i))); + array_Destroy(&arr); + + printf("0) ---------------------------------\n"); printf("Find Attribute at position=%d\n", cfg_findAttribute(&lst, NULL, "testattr")); printf("GetAttribute value=%s\n", cfg_getAttribute(&lst, "", "testattr")); printf("GetAttribute value=%s\n", cfg_getAttribute(&lst, "global", "attr2")); + printf("SetAttribute=%d\n", cfg_setAttribute(&lst, "global", "attr2", "1111111122222222222")); + printf("GetAttribute value=%s\n", cfg_getAttribute(&lst, "global", "attr2")); + printf("SetAttribute=%d\n", cfg_setAttribute(&lst, NULL, "att", "0001122277777777")); + printf("SetAttribute=%d\n", cfg_setAttribute(&lst, "global", "att", "0001122222222222")); + printf("SetAttribute=%d\n", cfg_setAttribute(&lst, "global", "attr2", "1111111122222222222")); + printf("GetAttribute value=%s\n", cfg_getAttribute(&lst, "global", "attr2")); + printf("GetAttribute value=%s\n", cfg_getAttribute(&lst, "", "att")); + printf("GetAttribute value=%s\n", cfg_getAttribute(&lst, NULL, "att")); + printf("UnsetAttribute=%d\n", cfg_unsetAttribute(&lst, "global", "a")); + printf("UnsetAttribute=%d\n", cfg_unsetAttribute(&lst, "global", "")); + printf("UnsetAttribute=%d\n", cfg_unsetAttribute(&lst, NULL, "att")); + printf("UnsetAttribute=%d\n", cfg_unsetAttribute(&lst, "global", "attr2")); + printf("GetAttribute value=%s\n", cfg_getAttribute(&lst, "global", "attr2")); - /* - SLIST_FOREACH(av, &lst, cfg_next) { - printf("av=%p\n", av); - /* - printf("s=%s a=%s v=%s\n", AIT_GET_LIKE(&av->cfg_sec, char*), - AIT_GET_LIKE(&av->cfg_attr, char*), AIT_GET_LIKE(&av->cfg_val, char*)); - */ - //} + printf("SetAttribute=%d\n", cfg_setAttribute(&lst, "section", "attr3", NULL)); + printf("LoadValue=%d :: ", cfg_loadAttribute(&lst, "section", "attr3", &v, "iH")); + printf("Str=%s\n", AIT_GET_STR(&v)); + AIT_FREE_VAL(&v); + printf("LoadValue=%d :: ", cfg_loadAttribute(&lst, "", "testattr", &v, "iH2")); + printf("Str=%s\n", AIT_GET_STR(&v)); + AIT_FREE_VAL(&v); - /* - printf("SetAttribute=%d\n", SetAttribute(&lst, "global", "attr2", "1111111122222222222")); - printf("GetAttribute value=%s\n", GetAttribute(&lst, "global", "attr2")); - printf("SetAttribute=%d\n", SetAttribute(&lst, NULL, "att", "0001122222222222")); - printf("SetAttribute=%d\n", SetAttribute(&lst, "global", "att", "0001122222222222")); - printf("SetAttribute=%d\n", SetAttribute(&lst, "global", "attr2", "1111111122222222222")); - printf("GetAttribute value=%s\n", GetAttribute(&lst, "global", "attr2")); - printf("UnsetAttribute=%d\n", UnsetAttribute(&lst, "global", "a")); - printf("UnsetAttribute=%d\n", UnsetAttribute(&lst, "global", "")); - printf("UnsetAttribute=%d\n", UnsetAttribute(&lst, NULL, "att")); - printf("UnsetAttribute=%d\n", UnsetAttribute(&lst, "global", "attr2")); - printf("GetAttribute value=%s\n", GetAttribute(&lst, "global", "attr2")); + printf("GetAttribute multi-lines value=%s\n", cfg_getAttribute(&lst, "section1", "attrtest")); + printf("GetAttribute multi-lines w/o \\ value=%s\n", cfg_getAttribute(&lst, "section1", "attrtest_1")); - printf("SetAttribute=%d\n", SetAttribute(&lst, "section", "attr3", NULL)); - printf("LoadValue=%d :: ", LoadAttribute(&lst, "section", "attr3", szStr, 255, "iH")); - printf("Str=%s\n", szStr); - */ -#if 0 - InitConfig(&tmp); - printf("tmp: SetAttribute=%d\n", cfg_SetAttribute(&tmp, "global", "piuk", "blahz")); - printf("tmp: SetAttribute=%d\n", cfg_SetAttribute(&tmp, "bzyt", "00", "99999")); - printf("tmp: SetAttribute=%d\n", cfg_SetAttribute(&tmp, "global", "gniah", "tiiiiiii")); - printf("tmp: SetAttribute=%d\n", cfg_SetAttribute(&tmp, NULL, "att", "0001122777777")); - InitConfig(&lst); - printf("SetAttribute=%d\n", cfg_SetAttribute(&lst, NULL, "zzz", "ZZZ")); - printf("SetAttribute=%d\n", cfg_SetAttribute(&lst, NULL, "att", "0001122222222222")); - printf("SetAttribute=%d\n", cfg_SetAttribute(&lst, "global", "att", "0001122222222222")); - printf("SetAttribute=%d\n", cfg_SetAttribute(&lst, "global", "attr2", "1111111122222222222")); - printf("GetAttribute value=%s\n", cfg_GetAttribute(&lst, "global", "attr2")); - printf("UnsetAttribute=%d\n", cfg_UnsetAttribute(&lst, "global", "a")); - printf("UnsetAttribute=%d\n", cfg_UnsetAttribute(&lst, "global", "")); - printf("UnsetAttribute=%d\n", cfg_UnsetAttribute(&lst, NULL, "att")); - printf("UnsetAttribute=%d\n", cfg_UnsetAttribute(&lst, "global", "attr2")); - printf("tmp: SetAttribute=%d\n", cfg_SetAttribute(&lst, "bzyt", "111", "99999")); + printf("GetAttribute from %%include file value=%s\n", cfg_getAttribute(&lst, "", "test4ext")); + printf("GetAttribute from %%include file [proba] value=%s\n", cfg_getAttribute(&lst, "proba", "test4ext")); + cfgUnloadConfig(&lst); + printf("1) ---------------------------------\n"); - WriteConfig(stdout, &tmp); - WriteConfig(stdout, &lst); - printf("---------------------------------\n"); - printf("%d\n---------------------------------\n", MergeConfig(&lst, &tmp)); - WriteConfig(stdout, &lst); -// printf("%d\n---------------------------------\n", ConcatConfig(&lst, &tmp)); -// WriteConfig(stdout, &lst); - printf("%d\n---------------------------------\n", ConcatConfig(&lst, &tmp)); - WriteConfig(stdout, &lst); + printf("size lst=%d tmp=%d %d\n", sizeof lst, sizeof tmp, sizeof(pthread_mutex_t)); - printf("CreateConfig=%d\n", CreateConfig("test4e.cfg", &lst)); - printf("errno=%d error=%s\n", cfg_GetErrno(), cfg_GetError()); + tmp = cfgInitConfig(); + printf("tmp: SetAttribute=%d\n", cfg_setAttribute(tmp, "global", "piuk", "BLAHzdf")); + printf("tmp: SetAttribute=%d\n", cfg_setAttribute(tmp, "bzyt", "00", "99999 sdfbj")); + printf("tmp: SetAttribute=%d\n", cfg_setAttribute(tmp, "global", "gniah", "tiiidfsdfsfsiiii")); + printf("tmp: SetAttribute=%d\n", cfg_setAttribute(tmp, NULL, "att", "0001122777777555")); + + tmp2 = cfgInitConfig(); + printf("SetAttribute=%d\n", cfg_setAttribute(tmp2, NULL, "zzz", "ZZZ")); + printf("SetAttribute=%d\n", cfg_setAttribute(tmp2, NULL, "att", "0001122222222222")); + printf("SetAttribute=%d\n", cfg_setAttribute(tmp2, "global", "att", "0001122222222222")); + printf("SetAttribute=%d\n", cfg_setAttribute(tmp2, "global", "attr2", "1111111122222222222")); + printf("GetAttribute value=%s\n", cfg_getAttribute(tmp2, "global", "attr2")); + printf("UnsetAttribute=%d\n", cfg_unsetAttribute(tmp2, "global", "a")); + printf("UnsetAttribute=%d\n", cfg_unsetAttribute(tmp2, "global", "")); + printf("UnsetAttribute=%d\n", cfg_unsetAttribute(tmp2, NULL, "att")); + printf("UnsetAttribute=%d\n", cfg_unsetAttribute(tmp2, "global", "attr2")); + printf("SetAttribute=%d\n", cfg_setAttribute(tmp2, "bzyt", "111", "99999")); + + cfgWriteConfig(stdout, tmp, 0); + cfgWriteConfig(stdout, tmp2, 1); + printf("2) ---------------------------------\n"); + +#ifndef SKIP_TEST_CONCAT + printf("concat=%d\n---------------------------------\n", cfgConcatConfig(tmp2, tmp)); + cfgWriteConfig(stdout, tmp2, 0); + printf("concat=%d\n---------------------------------\n", cfgConcatConfig(tmp2, tmp)); + cfgWriteConfig(stdout, tmp2, 1); +#else + cfgEndConfig(&tmp); #endif - cfgUnloadConfig(&lst); + + tmp = cfgInitConfig(); + printf("tmp: SetAttribute=%d\n", cfg_setAttribute(tmp, "global", "piuk", "blahz")); + printf("tmp: SetAttribute=%d\n", cfg_setAttribute(tmp, "bzyt", "00", "99999")); + printf("tmp: SetAttribute=%d\n", cfg_setAttribute(tmp, "global", "gniah", "tiiiiiii")); + printf("tmp: SetAttribute=%d\n", cfg_setAttribute(tmp, NULL, "att", "0001122777777")); + printf("tmp: SetAttribute=%d\n", cfg_setAttribute(tmp, "gruh", "shmink", "ohoboho")); + printf("tmp: SetAttribute=%d\n", cfg_setAttribute(tmp, "gruh", "shmink", "ohoboho1")); + printf("tmp: SetAttribute=%d\n", cfg_setAttribute(tmp, "gruh", "shmink", "ohoboho2")); + printf("tmp: SetAttribute=%d\n", cfg_setAttribute(tmp, "global", "piuk", "blahz1")); + printf("tmp: SetAttribute=%d\n", cfg_setAttribute(tmp, "global", "piuk", "blahz2")); + +#ifndef SKIP_TEST_MERGE + printf("before_merge ---------------------------------\n"); + cfgWriteConfig(stdout, tmp2, 1); + printf("after_merge=%d ---------------------------------\n", cfgMergeConfig(tmp2, tmp)); + cfgWriteConfig(stdout, tmp2, 1); +#else + cfgEndConfig(&tmp); +#endif + + arr = cfg_getSection(tmp2, ""); + printf("arr=%p size=%d\n", arr, array_Size(arr)); + + for (i = 0; i < array_Size(arr); i++) + printf("%s\\%s=%s\n", CFG_SECTION(array_Get(arr, i)), CFG_ATTRIBUTE(array_Get(arr, i)), CFG_VALUE(array_Get(arr, i))); + array_Destroy(&arr); + + arr = cfg_getSection(tmp2, "global"); + printf("arr=%p size=%d\n", arr, array_Size(arr)); + + for (i = 0; i < array_Size(arr); i++) + printf("%s\\%s=%s\n", CFG_SECTION(array_Get(arr, i)), CFG_ATTRIBUTE(array_Get(arr, i)), CFG_VALUE(array_Get(arr, i))); + array_Destroy(&arr); + + arr = cfg_getSection(tmp2, NULL); + printf("arr=%p size=%d\n", arr, array_Size(arr)); + + for (i = 0; i < array_Size(arr); i++) + printf("%s\\%s=%s\n", CFG_SECTION(array_Get(arr, i)), CFG_ATTRIBUTE(array_Get(arr, i)), CFG_VALUE(array_Get(arr, i))); + array_Destroy(&arr); + + printf("CreateConfig=%d\n", cfgCreateConfig("test4e.cfg", tmp2, 1)); + printf("errno=%d error=%s\n", cfg_GetErrno(), cfg_GetError()); + + cfgEndConfig(&tmp); + cfgEndConfig(&tmp2); return 0; }