Example #1
0
 def test_add_node(self):
     test_parent_node = UnorderedNodeBase(node_name='test_parent_node')
     test_child_node = UnorderedNodeBase(node_name='test_child_node')
     test_tree = TreeBase(root=test_parent_node)
     test_tree.add_node(parent_node=test_parent_node,
                        child_node=test_child_node)
     self.assertEqual(test_tree.get_num_nodes(), 2)
Example #2
0
 def test_find_node(self):
     test_parent_node = UnorderedNodeBase(node_name='test_parent_node')
     test_child_node = UnorderedNodeBase(node_name='test_child_node')
     test_tree = TreeBase(root=test_parent_node)
     test_tree.add_node(parent_node=test_parent_node,
                        child_node=test_child_node)
     self.assertEqual(test_tree.find_node(node_name='test_parent_node'),
                      test_parent_node)
     self.assertEqual(test_tree.find_node(node_name='test_child_node'),
                      test_child_node)
     self.assertEqual(test_tree.find_node(node_name='random_node'), None)
Example #3
0
 def test_get_sub_tree_size(self):
     test_parent_node = UnorderedNodeBase(node_name='test_parent_node')
     test_child_node_1 = UnorderedNodeBase(node_name='test_child_node_1')
     test_child_node_2 = UnorderedNodeBase(node_name='test_child_node_2')
     test_tree = TreeBase(root=test_parent_node)
     test_tree.add_node(parent_node=test_parent_node,
                        child_node=test_child_node_1)
     test_tree.add_node(parent_node=test_child_node_1,
                        child_node=test_child_node_2)
     self.assertEqual(
         test_tree.get_num_nodes_subtree(node=test_parent_node), 3)
     self.assertEqual(
         test_tree.get_num_nodes_subtree(node=test_child_node_1), 2)
Example #4
0
 def test_get_num_parents(self):
     test_child_node = UnorderedNodeBase(node_name='child_node')
     test_parent_node_1 = UnorderedNodeBase(node_name='parent_node_1')
     test_parent_node_2 = UnorderedNodeBase(node_name='parent_node_2')
     test_child_node.add_parent(parent_node=test_parent_node_1)
     test_child_node.add_parent(parent_node=test_parent_node_2)
     self.assertEqual(test_child_node.get_num_parents(), 2)
Example #5
0
 def test_get_children_names(self):
     test_parent_node = UnorderedNodeBase(node_name='parent_node')
     test_child_node_1 = UnorderedNodeBase(node_name='child_node_1')
     test_child_node_2 = UnorderedNodeBase(node_name='child_node_2')
     test_parent_node.add_child(child_node=test_child_node_1)
     test_parent_node.add_child(child_node=test_child_node_2)
     self.assertSetEqual(set(test_parent_node.get_children_names()), {'child_node_1', 'child_node_2'})
Example #6
0
 def test_get_parents_nodes(self):
     test_child_node = UnorderedNodeBase(node_name='child_node')
     test_parent_node_1 = UnorderedNodeBase(node_name='parent_node_1')
     test_parent_node_2 = UnorderedNodeBase(node_name='parent_node_2')
     test_child_node.add_parent(parent_node=test_parent_node_1)
     test_child_node.add_parent(parent_node=test_parent_node_2)
     self.assertSetEqual(set(test_child_node.get_parents_nodes()), {test_parent_node_1, test_parent_node_2})
Example #7
0
    def test_has_parent(self):
        test_child_node = UnorderedNodeBase(node_name='child_node')
        test_parent_node = UnorderedNodeBase(node_name='parent_node')
        test_child_node.add_parent(parent_node=test_parent_node)

        self.assertTrue(test_child_node.has_parent(parent_name='parent_node'))
        self.assertFalse(test_child_node.has_parent(parent_name='parent_node_0'))
Example #8
0
    def test_get_parent(self):
        test_child_node = UnorderedNodeBase(node_name='child_node')
        test_parent_node = UnorderedNodeBase(node_name='parent_node')
        test_child_node.add_parent(parent_node=test_parent_node)

        self.assertEqual(test_child_node.get_parent(parent_name='parent_node'), test_parent_node)
        self.assertEqual(test_child_node.get_parent(parent_name='parent_node_0'), None)
Example #9
0
    def test_get_parents(self):
        test_child_node = UnorderedNodeBase(node_name='child_node')
        test_parent_node_1 = UnorderedNodeBase(node_name='parent_node_1')
        test_parent_node_2 = UnorderedNodeBase(node_name='parent_node_2')
        test_child_node.add_parent(parent_node=test_parent_node_1)
        test_child_node.add_parent(parent_node=test_parent_node_2)

        expected_parents = {
            'parent_node_1': test_parent_node_1,
            'parent_node_2': test_parent_node_2,
        }
        self.assertDictEqual(test_child_node.get_parents(), expected_parents)
Example #10
0
 def test_get_root_node(self):
     test_root_node = UnorderedNodeBase(node_name='test_root_node')
     test_tree = TreeBase(root=test_root_node)
     self.assertEqual(test_tree.get_root_node(), test_root_node)
Example #11
0
    def test_delete_child(self):
        test_parent_node = UnorderedNodeBase(node_name='parent_node')
        test_child_node_1 = UnorderedNodeBase(node_name='child_node_1')
        test_child_node_2 = UnorderedNodeBase(node_name='child_node_2')
        test_parent_node.add_child(child_node=test_child_node_1)
        test_parent_node.add_child(child_node=test_child_node_2)

        test_parent_node.delete_child(child_node=test_child_node_1)
        self.assertEqual(test_parent_node.get_num_children(), 1)

        test_parent_node.delete_child(child_node=test_child_node_2)
        self.assertEqual(test_parent_node.get_num_children(), 0)
Example #12
0
 def test_unordered_node_children_ordered(self):
     test_node = UnorderedNodeBase(node_name='test_node')
     self.assertFalse(test_node.is_children_ordered())
Example #13
0
    def test_combined_tests_4(self):
        test_node_1 = UnorderedNodeBase(node_name='node_1')
        test_node_2 = UnorderedNodeBase(node_name='node_2')
        test_node_3 = UnorderedNodeBase(node_name='node_3')

        test_node_1.add_child(child_node=test_node_2)
        test_node_2.add_child(child_node=test_node_3)
        self.assertEqual(test_node_3.get_parent(parent_name='node_2').get_parent(parent_name='node_1'), test_node_1)
Example #14
0
    def test_combined_tests_3(self):
        test_child_node_1 = UnorderedNodeBase(node_name='child_node_1')
        test_child_node_2 = UnorderedNodeBase(node_name='child_node_2')
        test_parent_node_1 = UnorderedNodeBase(node_name='parent_node_1')
        test_parent_node_2 = UnorderedNodeBase(node_name='parent_node_2')

        test_parent_node_1.add_child(child_node=test_child_node_1)
        test_parent_node_2.add_child(child_node=test_child_node_1)
        test_parent_node_1.add_child(child_node=test_child_node_2)
        test_parent_node_2.add_child(child_node=test_child_node_2)

        test_parent_node_1.delete_child(child_node=test_child_node_1)

        self.assertSetEqual(set(test_parent_node_1.get_children_names()), {'child_node_2'})
        self.assertSetEqual(set(test_parent_node_2.get_children_names()), {'child_node_1', 'child_node_2'})
        self.assertSetEqual(set(test_child_node_1.get_parents_names()), {'parent_node_2'})
        self.assertSetEqual(set(test_child_node_2.get_parents_names()), {'parent_node_1', 'parent_node_2'})
Example #15
0
 def test_get_node_name(self):
     test_node = UnorderedNodeBase(node_name='test_node')
     self.assertEqual(test_node.get_node_name(), 'test_node')