3 static int destruct_counter = 0;
4 static int destruct_len = 0;
6 static void test_destuctor(vmlog_hash_entry *entry) {
9 destruct_len += entry->len;
17 int main(int argc,char **argv)
20 vmlog_thread_log *tlog;
21 vmlog_thread_log *tlog1;
23 vmlog_thread_log *tlogs[100];
25 vml = vmlog_log_new(NULL,1);
28 tlog = vmlog_get_thread_log(vml,(void*)123);
31 IS(vml->threadhash.nentries,1);
32 IS(tlog->threadid,(void*)123);
34 tlog = vmlog_get_thread_log(vml,(void*)0);
36 IS(vml->threadhash.nentries,2);
37 IS(tlog->threadid,(void*)0);
39 tlog = vmlog_get_thread_log(vml,(void*)123);
41 IS(vml->threadhash.nentries,2);
43 IS(tlog->threadid,(void*)123);
45 vmlog_hashtable_free(&(vml->threadhash),test_destuctor);
46 IS(destruct_counter,2);
48 vmlog_hashtable_init(&(vml->threadhash),5);
49 for (i=0; i<10; ++i) {
50 tlog = vmlog_get_thread_log(vml,(void*)(1000+i));
54 for (i=0; i<10; ++i) {
55 tlog = vmlog_get_thread_log(vml,(void*)(1000+i));
59 vmlog_hashtable_free(&(vml->threadhash),test_destuctor);
60 IS(destruct_counter,10);
65 /* vim: noet ts=8 sw=8