X-Git-Url: https://feistymeow.org/gitweb/?a=blobdiff_plain;f=nucleus%2Flibrary%2Ftests_nodes%2Ftest_symbol_tree.cpp;h=64e917e04c538861207e1bac908a670dce240ec8;hb=c28dc24c2c63c4b505009a911083245e1c87ebe8;hp=bc938d1d80eefbea49a430a403bd700fb878ca57;hpb=68c13351f6768d8104716fc5757fbaf11bb02519;p=feisty_meow.git diff --git a/nucleus/library/tests_nodes/test_symbol_tree.cpp b/nucleus/library/tests_nodes/test_symbol_tree.cpp index bc938d1d..64e917e0 100644 --- a/nucleus/library/tests_nodes/test_symbol_tree.cpp +++ b/nucleus/library/tests_nodes/test_symbol_tree.cpp @@ -28,9 +28,6 @@ #include #include -//#include -//#include - using namespace application; using namespace basis; using namespace filesystem; @@ -44,7 +41,7 @@ using namespace unit_test; #define LOG(to_print) EMERGENCY_LOG(program_wide_logger().get(), astring(to_print)) -#define DEBUG_SYMBOL_TREE +//#define DEBUG_TEST_SYMBOL_TREE // how many nodes we add to the tree. const int MAX_NODES_TESTED = 40000; @@ -60,12 +57,11 @@ public: int test_symbol_tree::execute() { FUNCDEF("execute"); - LOG("please check memory usage and record it, then hit a key to start testing."); try { - // creates a crazy tree with only one branch per node, but 40,000 deep. - symbol_tree t("blork"); - symbol_tree *curr = &t; + // creates a crazy tree with only one branch per node, but hugely deep. + symbol_tree *t = new symbol_tree("blork"); + symbol_tree *curr = t; for (int i = 0; i < MAX_NODES_TESTED; i++) { // if the current node has any branches, we'll jump on one as the next // place. @@ -77,17 +73,27 @@ int test_symbol_tree::execute() astring rando = string_manipulation::make_random_name(1, 10); curr->add(new symbol_tree(rando)); } - LOG("check memory usage now with full size. then hit a key."); +#ifdef DEBUG_TEST_SYMBOL_TREE + LOG("about to whack dynamic tree..."); +#endif + WHACK(t); + ASSERT_EQUAL(t, NULL_POINTER, "ensure pointer cleaned up"); +#ifdef DEBUG_TEST_SYMBOL_TREE + LOG("dynamic tree whacked."); +#endif } catch (...) { +#ifdef DEBUG_TEST_SYMBOL_TREE LOG("crashed during tree stuffing."); +#endif return 1; } - LOG("check memory usage after the run. then hit a key to end " - "the program."); + ASSERT_TRUE(true, "testing succeeded without cleanup crashes"); + + -//create a more balanced tree structure... -//perform known operations and validate shape of tree. +//hmmm: need more tests, like where we create a more balanced tree structure... +// perform known operations and validate shape of tree. return final_report(); }