char *data=strdup(key);
printf(" - Add %s\n",key);
- errcode=gras_dict_insert(head,key,data,&free);
+ errcode=gras_dict_set(head,key,data,&free);
if (GRAS_LOG_ISENABLED(dict,gras_log_priority_debug)) {
gras_dict_dump(head,(void (*)(void*))&printf);
fflush(stdout);
gras_error_t errcode;
- errcode=gras_dict_retrieve(head,key,&data);
+ errcode=gras_dict_get(head,key,&data);
printf(" - Search %s. Found %s\n",key,data?(char*)data:"(null)");fflush(stdout);
if (strcmp((char*)data,key))
return mismatch_error;
return no_error;
}
-void parse_log_opt(int argc, char **argv,const char *deft);
-
int main(int argc,char **argv) {
gras_error_t errcode;
gras_dict_t *head=NULL;
char *data;
- parse_log_opt(argc,argv,"dict.thresh=debug");
+ gras_init_defaultlog(&argc,argv,"dict.thresh=verbose");
printf("\nGeneric dictionnary: USAGE test:\n");
TRYFAIL(fill(&head));
printf(" Free the dictionnary\n");
gras_dict_free(&head);
-
+ printf(" Free the dictionnary again\n");
+ gras_dict_free(&head);
+
TRYFAIL(fill(&head));
printf(" - Change some values\n");
printf(" - Change 123 to 'Changed 123'\n");
- TRYFAIL(gras_dict_insert(head,"123",strdup("Changed 123"),&free));
+ TRYFAIL(gras_dict_set(head,"123",strdup("Changed 123"),&free));
printf(" - Change 123 back to '123'\n");
- TRYFAIL(gras_dict_insert(head,"123",strdup("123"),&free));
+ TRYFAIL(gras_dict_set(head,"123",strdup("123"),&free));
printf(" - Change 12a to 'Dummy 12a'\n");
- TRYFAIL(gras_dict_insert(head,"12a",strdup("Dummy 12a"),&free));
+ TRYFAIL(gras_dict_set(head,"12a",strdup("Dummy 12a"),&free));
printf(" - Change 12a to '12a'\n");
- TRYFAIL(gras_dict_insert(head,"12a",strdup("12a"),&free));
+ TRYFAIL(gras_dict_set(head,"12a",strdup("12a"),&free));
// gras_dict_dump(head,(void (*)(void*))&printf);
printf(" - Traverse the resulting dictionnary\n");
TRYFAIL(traverse(head));
printf(" - Retrive values\n");
- TRYFAIL(gras_dict_retrieve(head,"123",(void**)&data));
+ TRYFAIL(gras_dict_get(head,"123",(void**)&data));
assert(data);
TRYFAIL(strcmp("123",data));
- TRYEXPECT(gras_dict_retrieve(head,"Can't be found",(void**)&data),mismatch_error);
- TRYEXPECT(gras_dict_retrieve(head,"123 Can't be found",(void**)&data),mismatch_error);
- TRYEXPECT(gras_dict_retrieve(head,"12345678 NOT",(void**)&data),mismatch_error);
+ TRYEXPECT(gras_dict_get(head,"Can't be found",(void**)&data),mismatch_error);
+ TRYEXPECT(gras_dict_get(head,"123 Can't be found",(void**)&data),mismatch_error);
+ TRYEXPECT(gras_dict_get(head,"12345678 NOT",(void**)&data),mismatch_error);
TRYFAIL(search(head,"12a"));
TRYFAIL(search(head,"12b"));
printf(" Free the dictionnary (twice)\n");
gras_dict_free(&head);
- gras_dict_free(&head); // frees it twice to see if it triggers an error
+ gras_dict_free(&head);
printf(" - Traverse the resulting dictionnary\n");
TRYFAIL(traverse(head));
TRYEXPECT(debuged_remove(head,"Does not exist"),mismatch_error);
TRYFAIL(traverse(head));
+ gras_dict_free(&head);
+
+ printf(" - Remove data from the NULL dict (error message expected)\n");
TRYCATCH(debuged_remove(head,"12345"),mismatch_error);
- TRYFAIL(traverse(head));
+ printf(" - Remove each data manually (traversing the resulting dictionnary each time)\n");
+ TRYFAIL(fill(&head));
TRYFAIL(debuged_remove(head,"12a")); TRYFAIL(traverse(head));
TRYFAIL(debuged_remove(head,"12b")); TRYFAIL(traverse(head));
TRYFAIL(debuged_remove(head,"12")); TRYFAIL(traverse(head));
TRYFAIL(debuged_remove(head,"123")); TRYFAIL(traverse(head));
TRYEXPECT(debuged_remove(head,"12346"),mismatch_error); TRYFAIL(traverse(head));
+ printf(" - Free the dictionnary twice\n");
gras_dict_free(&head);
gras_dict_free(&head);
-
+ gras_exit();
return 0;
}