Example #1
0
File: _trees.py Project: jhill1/stk
    def test_delete_tree_XML_and_remove_source(self):
        XML = etree.tostring(etree.parse('data/input/clean_data.phyml',
                                         parser),
                             pretty_print=True)
        names = ["Hill_2012_1", "Hill_2012_2"]
        names.sort(reverse=True)
        trees = obtain_trees(XML)
        old_len = len(trees)
        new_xml = XML
        for name in names:
            new_xml = _swap_tree_in_XML(new_xml, None, name, delete=True)

        trees = obtain_trees(new_xml)
        self.assert_(len(trees) == old_len - 2)
        # check only one source remains
        names = get_all_source_names(new_xml)
        self.assert_(len(names) == 1)
        self.assert_(names[0] == "Hill_2011")
Example #2
0
    def test_clean_data(self):
        XML = etree.tostring(etree.parse('data/input/clean_data.phyml',
                                         parser),
                             pretty_print=True)
        XML = clean_data(XML)
        trees = obtain_trees(XML)
        self.assert_(len(trees) == 2)
        expected_trees = {
            'Hill_2011_2': '(A,B,(C,D,E));',
            'Hill_2011_1': '(A, B, C, (D, E, F));'
        }
        for t in trees:
            self.assert_(_trees_equal(trees[t], expected_trees[t]))

        # check only one source remains
        names = get_all_source_names(XML)
        self.assert_(len(names) == 1)
        self.assert_(names[0] == "Hill_2011")
Example #3
0
 def test_get_all_source_names(self):
     input_data = etree.tostring(xml_full_c)
     names = get_all_source_names(input_data)
     expected_names = ['Hill_1996', 'Hill_etal_1996', 'Hill_Davis_1996']
     self.assert_(expected_names.sort() == names.sort())
Example #4
0
 def test_all_unique_names_altered(self):
     new_xml = all_sourcenames(etree.tostring(non_unique_names))
     names = get_all_source_names(new_xml)
     expected_names = ['Hill_1996b', 'Hill_1996a', 'Hill_etal_1996', 'Hill_Davis_1996']
     self.assert_(expected_names.sort() == names.sort())
Example #5
0
 def test_full_sourcenames(self):
     new_xml = all_sourcenames(etree.tostring(xml_full))
     names = get_all_source_names(new_xml)
     expected_names = get_all_source_names(etree.tostring(xml_full_c))
     self.assertListEqual(names,expected_names)