def test_preorder_both(self):
     tree = Node.Node(5, Node.Node(4, None, None), Node.Node(3, None, None))
     self.assertEqual(TreeOperations.pre_order(tree), [5, 4, 3])
 def test_preorder_empty(self):
     self.assertEqual(TreeOperations.pre_order(None), [])
 def test_preorder_left(self):
     tree = Node.Node(5, Node.Node(4, None, None), None)
     self.assertEqual(TreeOperations.pre_order(tree), [5, 4])
 def test_preorder_automatically(self):
     for _ in range(0, 1000):
         t, l = gen_tree(7)
         self.assertEqual(TreeOperations.pre_order(t), l)