test_bitree.h 846 B

123456789101112131415161718192021222324252627282930313233343536
  1. #ifndef TEST_BITREE_H
  2. #define TEST_BITREE_H
  3. #include <setjmp.h>
  4. #include <stdarg.h>
  5. #include <stddef.h>
  6. #include <stdio.h>
  7. #include <google/cmockery.h>
  8. #include <ds.h>
  9. int tree_printer(void* node){
  10. ds_bitree_node_t* n = (ds_bitree_node_t*)node;
  11. printf("%d\n", (int)ds_bitree_data(n));
  12. return 1;
  13. }
  14. void test_bitree_generally(void **state) {
  15. ds_bitree_t* tree = ds_bitree_init(NULL);
  16. ds_bitree_ins_left(tree, NULL, (ds_data_t)1);
  17. ds_bitree_ins_left(tree, ds_bitree_root(tree), (ds_data_t)2);
  18. ds_bitree_ins_right(tree, ds_bitree_root(tree), (ds_data_t)3);
  19. assert_true(ds_bitree_size(tree) == 3);
  20. ds_bitree_preorder(ds_bitree_root(tree), tree_printer);
  21. ds_bitree_inorder(ds_bitree_root(tree), tree_printer);
  22. ds_bitree_postorder(ds_bitree_root(tree), tree_printer);
  23. ds_bitree_destroy(tree);
  24. UNUSED(state);
  25. }
  26. #endif