Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
API cleanup: s/dict_insert/dict_set/ and s/dict_retrieve/dict_get/ for consistency...
[simgrid.git] / testsuite / xbt / dict_usage.c
index c91e580..3bbff8f 100644 (file)
@@ -50,7 +50,7 @@ static gras_error_t debuged_add(gras_dict_t *head,const char*key)
   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);
@@ -63,7 +63,7 @@ static gras_error_t search(gras_dict_t *head,const char*key) {
   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;
@@ -96,14 +96,12 @@ static gras_error_t traverse(gras_dict_t *head) {
   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");
 
@@ -113,31 +111,33 @@ int main(int argc,char **argv) {
   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"));
@@ -153,7 +153,7 @@ int main(int argc,char **argv) {
 
   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));
@@ -164,9 +164,13 @@ int main(int argc,char **argv) {
   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));
@@ -177,8 +181,9 @@ int main(int argc,char **argv) {
   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;
 }