test_bitree.h 835 B

1234567891011121314151617181920212223242526272829303132333435
  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. void 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. }
  13. void test_bitree_generally(void **state) {
  14. ds_bitree_t* tree = ds_bitree_init(NULL);
  15. ds_bitree_ins_left(tree, NULL, (ds_data_t)1);
  16. ds_bitree_ins_left(tree, ds_bitree_root(tree), (ds_data_t)2);
  17. ds_bitree_ins_right(tree, ds_bitree_root(tree), (ds_data_t)3);
  18. assert_true(ds_bitree_size(tree) == 3);
  19. ds_bitree_preorder(ds_bitree_root(tree), tree_printer);
  20. ds_bitree_inorder(ds_bitree_root(tree), tree_printer);
  21. ds_bitree_postorder(ds_bitree_root(tree), tree_printer);
  22. ds_bitree_destroy(tree);
  23. UNUSED(state);
  24. }
  25. #endif