1 #include "common.h"
2 #include "mba/cfg.h"
3 #include "mba/text.h"
4 
5 int
CfgOps(int verbose,struct cfg * cfg,char * args[])6 CfgOps(int verbose, struct cfg *cfg, char *args[])
7 {
8 	tchar *instr = _T("a=z\nc=d\n\ne=f");
9 	int i;
10 	char buf[1024];
11 
12 	cfg = cfg_new(NULL);
13 	if (cfg_load(cfg, args[0]) == -1) {
14 		AMSG("Failed to load prp file: %s", args[0]);
15 		return -1;
16 	}
17 
18 	if (cfg_load_env(cfg) == -1 ||
19 			cfg_load_str(cfg, instr, instr + 100) == -1) {
20 		AMSG("");
21 		return -1;
22 	}
23 	i = 1;
24 	if (cfg_vget_int(cfg, &i, 500, _T("mail.folder.%d.idx"), i) == -1) {
25 		AMSG("");
26 		return -1;
27 	}
28 	if (i != 2) {
29 		PMSG("mail.folder.1.idx == %d", i);
30 		return -1;
31 	}
32 
33 	if (cfg_get_str(cfg, buf, 1024, NULL, "fruits") == -1 ||
34 				strcmp(buf, "apple, banana, pear, cantaloupe, watermelon, kiwi, mango") != 0) {
35 		PMSG("buf=>%s<", buf);
36 		return -1;
37 	}
38 	if (cfg_get_str(cfg, buf, 1024, NULL, "foo") == -1 ||
39 				strcmp(buf, "b	ar ") != 0) {
40 		PMSG("buf=>%s<", buf);
41 		return -1;
42 	}
43 
44 	cfg_del(cfg);
45 	tcase_printf(verbose, "done");
46 
47     return 0;
48 }
49