def test4(self): d = Node(4, None, None) e = Node(2, None, None) b = Node(9, None, d) c = Node(6, e, None) a = Node(7, b, c) tree4 = Tree(a) assert tree4.print_tree() == self.answer4
def test_2(self): node = Node(1, None, None) node.left = Node(2, Node(4, None, None), Node(5, None, None)) node.right = Node(3, Node(6, None, None), Node(7, None, None)) t = Tree(node) assert t.print_tree() == [['|', '|', '|', '1', '|', '|', '|'], ['|', '2', '|', '|', '|', '3', '|'], ['4', '|', '5', '|', '6', '|', '7']]
def test3(self): d = Node(4, None, None) e = Node(5, None, None) f = Node(6, None, None) g = Node(7, None, None) b = Node(2, d, e) c = Node(3, f, g) a = Node(1, b, c) tree3 = Tree(a) assert tree3.print_tree() == self.answer3
class test_tree(unittest.TestCase): def test_empty_tree(self): node = None self.tree = Tree(node) self.answer = "The tree is empty!" self.assertEqual(self.tree.print_tree(), self.answer) def test_case_1(self): node = Node(1, None, None) self.tree = Tree(node) self.answer = [[1]] assert self.tree.print_tree() == self.answer def test_case_2(self): node = Node(1, Node(2, Node(3, Node(4, None, None), None), None), None) self.tree = Tree(node) self.answer = [['|', '|', '|', '|', '|', '|', '|', 1, '|', '|', '|', '|', '|', '|', '|'], ['|', '|', '|', 2, '|', '|', '|', '|', '|', '|', '|', '|', '|', '|', '|'], ['|', 3, '|', '|', '|', '|', '|', '|', '|', '|', '|', '|', '|', '|', '|'], [4, '|', '|', '|', '|', '|', '|', '|', '|', '|', '|', '|', '|', '|', '|']] assert self.tree.print_tree() == self.answer def test_case_3(self): node = Node(1, Node(2, Node(4, None, None), Node(5, None, None)), Node(3, Node(6, None, None), Node(7, None, None))) self.tree = Tree(node) self.answer = [['|', '|', '|', 1, '|', '|', '|'], ['|', 2, '|', '|', '|', 3, '|'], [4, '|', 5, '|', 6, '|', 7]] assert self.tree.print_tree() == self.answer def test_case_4(self): left_node = Node(2, None, Node(4, None, None)) right_node = Node(3, Node(5, None, Node(6, None, None)), None) node = Node(1, left_node, right_node) self.tree = Tree(node) self.answer = [['|', '|', '|', '|', '|', '|', '|', 1, '|', '|', '|', '|', '|', '|', '|'], ['|', '|', '|', 2, '|', '|', '|', '|', '|', '|', '|', 3, '|', '|', '|'], ['|', '|', '|', '|', '|', 4, '|', '|', '|', 5, '|', '|', '|', '|', '|'], ['|', '|', '|', '|', '|', '|', '|', '|', '|', '|', 6, '|', '|', '|', '|']] assert self.tree.print_tree() == self.answer
def test_3(self): node = Node(1, None, None) node.left = Node(2, None, None) node.left.left = Node(3, None, None) node.left.left.left = Node(4, None, None) t = Tree(node) assert t.print_tree() == [['|', '|', '|', '|', '|', '|', '|', '1', '|', '|', '|', '|', '|', '|', '|'], ['|', '|', '|', '2', '|', '|', '|', '|', '|', '|', '|', '|', '|', '|', '|'], ['|', '3', '|', '|', '|', '|', '|', '|', '|', '|', '|', '|', '|', '|', '|'], ['4', '|', '|', '|', '|', '|', '|', '|', '|', '|', '|', '|', '|', '|', '|']]
def test_1(self): t = Tree(Node(1, None, None)) assert t.print_tree() == [['1']]
class TestTree(unittest.TestCase): def setUp(self): # Four test cases t21 = Node(4, None, None) t22 = Node(5, None, None) t23 = Node(6, None, None) t24 = Node(7, None, None) t11 = Node(2, t21, t22) t12 = Node(3, t23, t24) root_1 = Node(1, t11, t12) self.test_1 = Tree(root_1) n3 = Node(4, None, None) n2 = Node(3, n3, None) n1 = Node(2, n2, None) root_2 = Node(1, n1, None) self.test_2 = Tree(root_2) root_3 = Node(1, None, None) self.test_3 = Tree(root_3) n5 = Node(9, None, None) n4 = Node(8, None, n5) n3 = Node(7, n4, None) n2 = Node(6, None, None) n1 = Node(5, None, n2) root_4 = Node(4, n1, n3) self.test_4 = Tree(root_4) def test_case_1(self): tree_list = self.test_1.print_tree() assert np.all( np.array(tree_list) == np.array( [['|', '|', '|', '1', '|', '|', '|'], ['|', '2', '|', '|', '|', '3', '|'], ['4', '|', '5', '|', '6', '|', '7']])) def test_case_2(self): tree_list = self.test_2.print_tree() assert np.all( np.array(tree_list) == np.array([['|'] * 7 + ['1'] + ['|'] * 7, ['|'] * 3 + ['2'] + ['|'] * 11, ['|'] + ['3'] + ['|'] * 13, ['4'] + ['|'] * 14])) def test_case_3(self): tree_list = self.test_3.print_tree() assert np.all(np.array(tree_list) == np.array(['1'])) def test_case_4(self): tree_list = self.test_4.print_tree() assert np.all( np.array(tree_list) == np.array([['|'] * 7 + ['4'] + ['|'] * 7, ['|'] * 3 + ['5'] + ['|'] * 7 + ['7'] + ['|'] * 3, ['|'] * 5 + ['6'] + ['|'] * 3 + ['8'] + ['|'] * 5, ['|'] * 10 + ['9'] + ['|'] * 4]))
def test2(self): c = Node(3, None, None) b = Node(2, c, None) a = Node(1, b, None) tree2 = Tree(a) assert tree2.print_tree() == self.answer2
def test1(self): a = Node(1, None, None) tree1 = Tree(a) assert tree1.print_tree() == self.answer1