Пример #1
0
    def test_check_if_tree_is_symmetrical__when_tree_is_symmetrical_and_has_more_than_one_levels__then_result_is_true(
            self):
        first_child_of_second_root_child: Node = Node(2, tuple([Node(33)]))
        second_child_of_third_root_child: Node = Node(2, tuple([Node(33)]))

        first_root_child: Node = Node(3, (Node(9), Node(4), Node(1)))
        second_root_child: Node = Node(
            4, (first_child_of_second_root_child, Node(4)))
        third_root_child: Node = Node(
            4, (Node(4), second_child_of_third_root_child))
        forth_root_child: Node = Node(3, (Node(1), Node(4), Node(9)))

        root_node: Node = Node(4, (first_root_child, second_root_child,
                                   third_root_child, forth_root_child))
        self.assertTrue(check_if_tree_is_symmetrical(root_node))
Пример #2
0
 def test_check_if_tree_is_symmetrical__when_root_is_none__then_tree_is_symmetrical(
         self):
     self.assertTrue(check_if_tree_is_symmetrical(None))
Пример #3
0
 def test_check_if_tree_is_symmetrical__when_root_children_have_different_number_of_children__then_tree_is_asymmetrical(
         self):
     left_child: Node = Node(3, (Node(9), Node(4)))
     right_child: Node = Node(3, (Node(1), Node(4), Node(9)))
     root_node: Node = Node(4, (left_child, right_child))
     self.assertFalse(check_if_tree_is_symmetrical(root_node))
Пример #4
0
 def test_check_if_tree_is_symmetrical__when_root_has_2_children_with_same_value_and_these_children_have_symmetrical_children__then_tree_is_symmetrical(
         self):
     left_child: Node = Node(3, (Node(9), Node(4), Node(1)))
     right_child: Node = Node(3, (Node(1), Node(4), Node(9)))
     root_node: Node = Node(4, (left_child, right_child))
     self.assertTrue(check_if_tree_is_symmetrical(root_node))
Пример #5
0
 def test_check_if_tree_is_symmetrical__when_root_has_2_children_with_different_values__then_tree_is_asymmetrical(
         self):
     root_node: Node = Node(4, (Node(3), Node(2)))
     self.assertFalse(check_if_tree_is_symmetrical(root_node))
Пример #6
0
 def test_check_if_tree_is_symmetrical__when_root_has_1_child__then_tree_is_asymmetrical(
         self):
     root_node: Node = Node(4, tuple([Node(3)]))
     self.assertFalse(check_if_tree_is_symmetrical(root_node))
Пример #7
0
 def test_check_if_tree_is_symmetrical__when_tree_contains_only_1_node__then_tree_is_symmetrical(
         self):
     self.assertTrue(check_if_tree_is_symmetrical(Node(4)))