From: mquinson Date: Tue, 28 Jun 2005 10:23:55 +0000 (+0000) Subject: Reuse the dynar of keys to speed the test up;verbose<0 => absolutelely no output... X-Git-Tag: v3.3~3902 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/eb7e5d550a7b9f486a6d602f415e2a4f65351295?ds=sidebyside Reuse the dynar of keys to speed the test up;verbose<0 => absolutelely no output per printf (ie, don't polute my neat logging stuff);various little bugfixes git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@1453 48e7efb5-ca39-0410-a469-dd3cf9ba447f --- diff --git a/testsuite/xbt/multidict_crash.c b/testsuite/xbt/multidict_crash.c index 720cbf7aec..9e8b1a0222 100644 --- a/testsuite/xbt/multidict_crash.c +++ b/testsuite/xbt/multidict_crash.c @@ -13,11 +13,11 @@ XBT_LOG_NEW_DEFAULT_CATEGORY(Test,"this test"); -#define NB_ELM 10/*00*/ +#define NB_ELM 100 /*00*/ #define DEPTH 5 -#define KEY_SIZE 6 /*512*/ -#define NB_TEST 20 -int verbose=1; +#define KEY_SIZE 512 +#define NB_TEST 20 /*20*/ +int verbose=0; static void str_free(void *s) { char *c=*(char**)s; @@ -26,7 +26,7 @@ static void str_free(void *s) { int main(int argc, char *argv[]) { xbt_error_t errcode; - xbt_dict_t mdict=xbt_dict_new(); + xbt_dict_t mdict = NULL; int i,j,k,l; xbt_dynar_t keys = xbt_dynar_new(sizeof(char*),str_free); void *data; @@ -38,31 +38,38 @@ int main(int argc, char *argv[]) { printf(" Fill the struct and frees it %d times, using %d elements, depth of multicache=%d\n",NB_TEST,NB_ELM,DEPTH); printf(" with %d chars long randomized keys. (a point is a test)\n",KEY_SIZE); + for (l=0 ; l0) { printf("Test %d\n",i); - } else { + } else if (verbose==0) { if (i%10) printf("."); else printf("%d",i/10); } fflush(stdout); for (j=0;j0) printf (" Add {"); for (l=0 ; l0) printf("%p=%s %s ",key, key,(l0) printf("in multitree %p.\n",mdict); - TRYFAIL(xbt_multidict_set(mdict,keys,xbt_strdup(key),&str_free)); + TRYFAIL(xbt_multidict_set(mdict,keys,xbt_strdup(key),free)); TRYFAIL(xbt_multidict_get(mdict,keys,&data)); @@ -70,9 +77,12 @@ int main(int argc, char *argv[]) { "Retrieved value (%s) does not match the entrered one (%s)\n", (char*)data,key); } + xbt_dict_free(&mdict); } + + xbt_dynar_free(&keys); -/* if (verbose) +/* if (verbose>0) xbt_dict_dump(mdict,&xbt_dict_print);*/ xbt_dict_free(&mdict);