Ejemplo n.º 1
0
 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
Ejemplo n.º 2
0
 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']]
Ejemplo n.º 3
0
 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
Ejemplo n.º 4
0
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
Ejemplo n.º 5
0
 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', '|', '|', '|', '|', '|', '|',
                                '|', '|', '|', '|', '|', '|', '|', '|']]
Ejemplo n.º 6
0
 def test_1(self):
     t = Tree(Node(1, None, None))
     assert t.print_tree() == [['1']]
Ejemplo n.º 7
0
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]))
Ejemplo n.º 8
0
 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
Ejemplo n.º 9
0
 def test1(self):
     a = Node(1, None, None)
     tree1 = Tree(a)
     assert tree1.print_tree() == self.answer1