//======Test Methods====== private static void testAdd() { TwoThreeTree ttt = new TwoThreeTree(); Random r = new Random(); int adding = 0; Console.Out.WriteLine("====Test1===="); Console.Out.WriteLine(">Tests adding to an empty tree"); ttt.addNode(5); ttt.printTreeWithLevels(); Console.Out.WriteLine(""); Console.Out.WriteLine("====Test2===="); Console.Out.WriteLine(">Tests adding two more nodes to the previously established tree"); ttt.addNode(7); ttt.addNode(6); ttt.printTreeWithLevels(); Console.Out.WriteLine(); Console.Out.WriteLine("====Test3===="); Console.Out.WriteLine(">Tests whether a split in the root node works"); ttt.addNode(10); ttt.addNode(7); ttt.addNode(7); ttt.addNode(6); ttt.addNode(4); ttt.addNode(3); ttt.addNode(8); ttt.printTreeWithLevels(); ttt.addNode(9); ttt.addNode(11); ttt.printTreeWithLevels(); Console.Out.WriteLine(); Console.Out.WriteLine("====Test4==="); Console.Out.WriteLine(">Tests adding 100 random values to the tree"); for (int i = 0; i < 1000; i++) { adding = r.Next(4500) + 1; Console.Out.WriteLine("Adding " + adding.ToString()); ttt.addNode(adding); ttt.printTreeWithLevels(); Console.Out.WriteLine(); } ttt.printTree(); Console.Out.WriteLine(); deleteTest(ttt); }
private static void deleteTest(TwoThreeTree ttt) { TwoThreeTree ttt2 = new TwoThreeTree(); Random r = new Random(); int temp = 0; Console.Out.WriteLine("====Test 5===="); Console.Out.WriteLine(">Tests creating a tree and deleting from it"); for (int i = 0; i < 10; i++) { ttt2.addNode(i + 1); } ttt2.printTreeWithLevels(); Console.Out.WriteLine(); ttt2.deleteNode(1); ttt2.printTreeWithLevels(); Console.Out.WriteLine(); Console.Out.WriteLine("====Test 6===="); Console.Out.WriteLine(">Tests deleteing nodes from the temp tree"); ttt2.deleteNode(10); ttt2.printTreeWithLevels(); Console.Out.WriteLine(); ttt2.deleteNode(7); ttt2.printTreeWithLevels(); Console.Out.WriteLine(); ttt2.deleteNode(3); ttt2.printTreeWithLevels(); Console.Out.WriteLine(); ttt2.deleteNode(5); ttt2.printTreeWithLevels(); Console.Out.WriteLine(); ttt2.deleteNode(4); ttt2.deleteNode(8); ttt2.deleteNode(9); ttt2.deleteNode(2); ttt2.deleteNode(6); ttt2.deleteNode(1); ttt2.printTreeWithLevels(); Console.Out.WriteLine(); Console.Out.WriteLine("====Test 7===="); Console.Out.WriteLine(">Tests removing lots of nodes from a big tree"); for (int i = 0; i < 1000000; i++) { temp = r.Next(4500) + 1; try { ttt.deleteNode(temp); } catch (Exception e) { ttt.printTreeWithLevels(); Console.Out.WriteLine(); Console.Out.WriteLine("Number: " + temp); break; } } ttt.printTreeWithLevels(); Console.Out.WriteLine(); }