X-Git-Url: https://feistymeow.org/gitweb/?a=blobdiff_plain;f=nucleus%2Flibrary%2Ftests_nodes%2Ftest_symbol_tree.cpp;h=fa4a5c8cb40c198b7db12eb60b45a14a365629d8;hb=092bb1f6c64b3caf3d9b36577d0900fdf6c2af26;hp=ef9917c45d44e34cc1d0feb5e0cf4964a348c9c8;hpb=457b128b77b5b4a0b7dd3094de543de2ce1477ad;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 ef9917c4..fa4a5c8c 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; @@ -46,22 +43,26 @@ using namespace unit_test; #define DEBUG_SYMBOL_TREE -class test_symbol_tree : public virtual unit_base, virtual public application_shell +// how many nodes we add to the tree. +const int MAX_NODES_TESTED = 40000; + +class test_symbol_tree : public unit_base, public application_shell { public: - test_symbol_tree() {} + test_symbol_tree() : unit_base() {} DEFINE_CLASS_NAME("test_symbol_tree"); int execute(); }; int test_symbol_tree::execute() { - LOG("please check memory usage and record it, then hit a key to start testing."); + FUNCDEF("execute"); try { - symbol_tree t("blork"); - symbol_tree *curr = &t; - for (int i = 0; i < 40000; i++) { + // 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. if (curr->branches()) { @@ -72,17 +73,16 @@ 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."); +LOG("about to whack dynamic tree..."); + WHACK(t); +LOG("dynamic tree whacked."); } catch (...) { LOG("crashed during tree stuffing."); return 1; } - LOG("check memory usage after the run. then hit a key to end " - "the program."); - -//create a tree structure... -//perform known operations and validate shape of tree. +//hmmm: create a more balanced tree structure... +// perform known operations and validate shape of tree. return final_report(); }