def test_parent_label(self): node = {'node_type': 'REGTEXT', 'label': ['204', 'a', '1', 'ii']} parent_label = tree_builder.parent_label(node) self.assertEquals(['204', 'a', '1'], parent_label) node = {'node_type': 'INTERP', 'label': ['204', 'Interp']} parent_label = tree_builder.parent_label(node) self.assertEquals(['204'], parent_label) node = {'node_type': 'INTERP', 'label': ['204', '2', 'Interp']} parent_label = tree_builder.parent_label(node) self.assertEquals(['204', 'Interp'], parent_label) node = {'node_type': 'INTERP', 'label': ['204', '2', 'a', 'Interp']} parent_label = tree_builder.parent_label(node) self.assertEquals(['204', '2', 'Interp'], parent_label) node = {'node_type': 'INTERP', 'label': ['204', '2', 'Interp', '1']} parent_label = tree_builder.parent_label(node) self.assertEquals(['204', '2', 'Interp'], parent_label) node = { 'node_type': 'INTERP', 'label': ['204', '2', 'Interp', '1', 'i'] } parent_label = tree_builder.parent_label(node) self.assertEquals(['204', '2', 'Interp', '1'], parent_label)
def test_parent_label(self): node = {'node_type': 'REGTEXT', 'label': ['204', 'a', '1', 'ii']} parent_label = tree_builder.parent_label(node) self.assertEquals(['204', 'a', '1'], parent_label) node = {'node_type': 'INTERP', 'label': ['204', 'Interp']} parent_label = tree_builder.parent_label(node) self.assertEquals(['204'], parent_label) node = {'node_type': 'INTERP', 'label': ['204', '2', 'Interp']} parent_label = tree_builder.parent_label(node) self.assertEquals(['204', 'Interp'], parent_label) node = {'node_type': 'INTERP', 'label': ['204', '2', 'a', 'Interp']} parent_label = tree_builder.parent_label(node) self.assertEquals(['204', '2', 'Interp'], parent_label) node = {'node_type': 'INTERP', 'label': ['204', '2', 'Interp', '1']} parent_label = tree_builder.parent_label(node) self.assertEquals(['204', '2', 'Interp'], parent_label) node = {'node_type': 'INTERP', 'label': ['204', '2', 'Interp', '1', 'i']} parent_label = tree_builder.parent_label(node) self.assertEquals(['204', '2', 'Interp', '1'], parent_label)
def add_nodes_to_tree(self, original, adds): """ Add all the nodes from new_nodes into the original tree. """ tree = tree_builder.build_tree_hash(original) for label, node in adds.queue: p_label = '-'.join(tree_builder.parent_label(node)) if tree_builder.parent_in_tree(p_label, tree): tree_builder.add_node_to_tree(node, p_label, tree) adds.delete(label) else: parent = adds.find(p_label) if parent: tree_builder.add_child(parent[1], node) else: original.update(node)
def test_parent_label(self): node = {"node_type": "REGTEXT", "label": ["204", "a", "1", "ii"]} parent_label = tree_builder.parent_label(node) self.assertEquals(["204", "a", "1"], parent_label) node = {"node_type": "INTERP", "label": ["204", "Interp"]} parent_label = tree_builder.parent_label(node) self.assertEquals(["204"], parent_label) node = {"node_type": "INTERP", "label": ["204", "2", "Interp"]} parent_label = tree_builder.parent_label(node) self.assertEquals(["204", "Interp"], parent_label) node = {"node_type": "INTERP", "label": ["204", "2", "a", "Interp"]} parent_label = tree_builder.parent_label(node) self.assertEquals(["204", "2", "Interp"], parent_label) node = {"node_type": "INTERP", "label": ["204", "2", "Interp", "1"]} parent_label = tree_builder.parent_label(node) self.assertEquals(["204", "2", "Interp"], parent_label) node = {"node_type": "INTERP", "label": ["204", "2", "Interp", "1", "i"]} parent_label = tree_builder.parent_label(node) self.assertEquals(["204", "2", "Interp", "1"], parent_label)