diff options
author | Igor Sysoev <igor@sysoev.ru> | 2018-03-29 16:35:26 +0300 |
---|---|---|
committer | Igor Sysoev <igor@sysoev.ru> | 2018-03-29 16:35:26 +0300 |
commit | 8a4c8d64b264f5f8eb9951f26ee1af3ddd1c01f6 (patch) | |
tree | 5975dadffa04015c66b6168f73a70796a0261fe1 /src/test | |
parent | bd451a50a9ca3bf9a422c4e8b8bc8bd6c126a1b7 (diff) | |
download | unit-8a4c8d64b264f5f8eb9951f26ee1af3ddd1c01f6.tar.gz unit-8a4c8d64b264f5f8eb9951f26ee1af3ddd1c01f6.tar.bz2 |
nxt_lvlhsh_peek().
Diffstat (limited to 'src/test')
-rw-r--r-- | src/test/nxt_lvlhsh_test.c | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/test/nxt_lvlhsh_test.c b/src/test/nxt_lvlhsh_test.c index 62139fe6..c808192c 100644 --- a/src/test/nxt_lvlhsh_test.c +++ b/src/test/nxt_lvlhsh_test.c @@ -130,6 +130,7 @@ nxt_lvlhsh_test_delete(nxt_lvlhsh_t *lh, const nxt_lvlhsh_proto_t *proto, nxt_int_t nxt_lvlhsh_test(nxt_thread_t *thr, nxt_uint_t n, nxt_bool_t use_pool) { + void *value; uintptr_t key; nxt_mp_t *mp; nxt_nsec_t start, end; @@ -201,15 +202,26 @@ nxt_lvlhsh_test(nxt_thread_t *thr, nxt_uint_t n, nxt_bool_t use_pool) return NXT_ERROR; } - key = 0; for (i = 0; i < n; i++) { - key = nxt_murmur_hash2(&key, sizeof(uint32_t)); + value = nxt_lvlhsh_peek(&lh, proto); + + if (value == NULL) { + break; + } + + key = (uintptr_t) value; if (nxt_lvlhsh_test_delete(&lh, proto, mp, key) != NXT_OK) { return NXT_ERROR; } } + if (i != n) { + nxt_log_error(NXT_LOG_NOTICE, thr->log, + "lvlhsh peek test failed at %ui of %ui", i, n); + return NXT_ERROR; + } + if (mp != NULL) { if (!nxt_mp_is_empty(mp)) { nxt_log_error(NXT_LOG_NOTICE, thr->log, "mem pool is not empty"); |