Fri, 28 Sep 2018 21:47:30 +0200
adds some additional avl tree tests
test/avl_tests.c | file | annotate | diff | comparison | revisions |
1.1 --- a/test/avl_tests.c Wed Aug 22 14:39:24 2018 +0200 1.2 +++ b/test/avl_tests.c Fri Sep 28 21:47:30 2018 +0200 1.3 @@ -230,6 +230,8 @@ 1.4 1.5 UCX_TEST(test_ucx_avl_find) { 1.6 UcxAVLTree *tree = ucx_avl_new(ucx_cmp_ptr); 1.7 + UcxAVLTree *tree2 = ucx_avl_new(ucx_cmp_ptr); 1.8 + UcxAVLTree *tree3 = ucx_avl_new(ucx_cmp_ptr); 1.9 1.10 size_t len = 12; 1.11 int val[] = {10, 15, 3, 4, -30, 20, 14, -11, 12, -5, 1, 13}; 1.12 @@ -278,9 +280,25 @@ 1.13 ret = ucx_avl_find(tree,(intptr_t)7, dist_int, UCX_AVL_FIND_UPPER_BOUNDED); 1.14 UCX_TEST_ASSERT(ret && *((int*)ret) == 4, "AVL find UB failed"); 1.15 1.16 + int val2[] = { 10, 15 }; 1.17 + ucx_avl_put(tree2, val2[0], &(val2[0])); 1.18 + ucx_avl_put(tree2, val2[1], &(val2[1])); 1.19 + ret = ucx_avl_find(tree2,(intptr_t)11, dist_int, UCX_AVL_FIND_UPPER_BOUNDED); 1.20 + UCX_TEST_ASSERT(ret && *((int*)ret) == 10, "AVL find LB failed"); 1.21 + 1.22 + int val3[] = { 15, 16, 1 }; 1.23 + ucx_avl_put(tree3, val3[0], &(val3[0])); 1.24 + ucx_avl_put(tree3, val3[1], &(val3[1])); 1.25 + ucx_avl_put(tree3, val3[2], &(val3[2])); 1.26 + 1.27 + ret = ucx_avl_find(tree3, (intptr_t)13, dist_int, UCX_AVL_FIND_CLOSEST); 1.28 + UCX_TEST_ASSERT(ret && *((int*)ret) == 15, "AVL find closest failed"); 1.29 + 1.30 UCX_TEST_END 1.31 1.32 ucx_avl_free(tree); 1.33 + ucx_avl_free(tree2); 1.34 + ucx_avl_free(tree3); 1.35 } 1.36 1.37 UCX_TEST(test_ucx_avl_traverse) {