|
unbound
0.1
|
Tests the locking LRU keeping hash table implementation. More...
#include "config.h"#include "testcode/unitmain.h"#include "util/log.h"#include "util/storage/slabhash.h"Data Structures | |
| struct | slab_test_thr |
| structure to threaded test the lru hash table More... | |
Defines | |
| #define | HASHTESTMAX 32 |
| number of hash test max | |
Typedefs | |
| typedef struct slabhash_testkey | testkey_t |
| use this type for the slabhash test key | |
| typedef struct slabhash_testdata | testdata_t |
| use this type for the slabhash test data | |
Functions | |
| static void | delkey (struct slabhash_testkey *k) |
| delete key | |
| static hashvalue_t | myhash (int id) |
| hash func, very bad to improve collisions, both high and low bits | |
| static testkey_t * | newkey (int id) |
| allocate new key, fill in hash | |
| static testdata_t * | newdata (int val) |
| new data el | |
| static void | test_short_table (struct slabhash *table) |
| test hashtable using short sequence | |
| static void | testadd (struct slabhash *table, testdata_t *ref[]) |
| test adding a random element | |
| static void | testremove (struct slabhash *table, testdata_t *ref[]) |
| test adding a random element | |
| static void | testlookup (struct slabhash *table, testdata_t *ref[]) |
| test adding a random element | |
| static void | check_lru_table (struct lruhash *table) |
| check integrity of hash table | |
| static void | check_table (struct slabhash *table) |
| check integrity of hash table | |
| static void | testadd_unlim (struct slabhash *table, testdata_t **ref) |
| test adding a random element (unlimited range) | |
| static void | testremove_unlim (struct slabhash *table, testdata_t **ref) |
| test adding a random element (unlimited range) | |
| static void | testlookup_unlim (struct slabhash *table, testdata_t **ref) |
| test adding a random element (unlimited range) | |
| static void | test_long_table (struct slabhash *table) |
| test with long sequence of adds, removes and updates, and lookups | |
| static void * | test_thr_main (void *arg) |
| main routine for threaded hash table test | |
| static void | test_threaded_table (struct slabhash *table) |
| test hash table access by multiple threads | |
| void | slabhash_test (void) |
| unit test slabhashtable implementation | |
Tests the locking LRU keeping hash table implementation.
1.7.6.1