2 Copyright 2020 Google LLC
4 Use of this source code is governed by a BSD-style
5 license that can be found in the LICENSE file or at
6 https://developers.google.com/open-source/licenses/bsd
12 #include "test_framework.h"
13 #include "reftable-tests.h"
15 static int test_compare(const void *a
, const void *b
)
17 return (char *)a
- (char *)b
;
24 static void check_increasing(void *arg
, void *key
)
26 struct curry
*c
= arg
;
28 EXPECT(test_compare(c
->last
, key
) < 0);
33 static void test_tree(void)
35 struct tree_node
*root
= NULL
;
37 void *values
[11] = { NULL
};
38 struct tree_node
*nodes
[11] = { NULL
};
40 struct curry c
= { NULL
};
42 nodes
[i
] = tree_search(values
+ i
, &root
, &test_compare
, 1);
46 for (i
= 1; i
< ARRAY_SIZE(nodes
); i
++) {
47 EXPECT(values
+ i
== nodes
[i
]->key
);
49 tree_search(values
+ i
, &root
, &test_compare
, 0));
52 infix_walk(root
, check_increasing
, &c
);
56 int tree_test_main(int argc
, const char *argv
[])