]> git.datanom.net - hashtable.git/blobdiff - test.c
Add more functions
[hashtable.git] / test.c
diff --git a/test.c b/test.c
index 8cf65c47d6f8d355bfbe7b806dde811b45d246d0..49a33a9b3543a6bcf8af6fd9e1fc2194eedb6a82 100644 (file)
--- a/test.c
+++ b/test.c
@@ -190,16 +190,30 @@ int main(int argc, char** argv) {
        printf("%u out of %u inserted words in table were in the table\n", good_guesses, numwords);
 
        HashtableIter iter;
-       void* key/* = malloc(sizeof(void*))*/;
-       void* value/* = malloc(sizeof(void*))*/;
+       void* key;
+       void* value;
 
        hash_table_iter_init(&iter, table);
        while (hash_table_iter_next(&iter, &key, &value)) {
                char* s1 = ((Node*) value)->name;
                printf("Key: %p value: %s\n", key, s1);
        }
-       //free(key);
-       //free(value);
+
+       Node* node1 = calloc(sizeof(Node*), 1);
+       node1->name = strdup("Dummy Test Name");
+       if (hash_table_insert(table, node1, node1) == true) {
+               hash_table_iter_init(&iter, table);
+               printf("Hashtable size: %lu. Key found: %d\n", hash_table_size(table), hash_table_contains(table, node1));
+               void* data = hash_table_delete(table, node1);
+               printf("Deleted: [%p] %s\n", node1, ((Node*) data)->name);
+               free(((Node*) data)->name);
+               free(data);
+               printf("Hashtable size: %lu. Key found: %d\n", hash_table_size(table), hash_table_contains(table, node1));
+               Node* node2 = calloc(sizeof(Node*), 1);
+               node2->name = strdup("Test Name");
+               hash_table_replace(table, node2, node2);
+               printf("Hashtable size: %lu. Key found: %d\n", hash_table_size(table), hash_table_contains(table, node2));
+       }
 
        hash_table_destroy(table);
 }
This page took 0.029418 seconds and 5 git commands to generate.