Esempio n. 1
0
def test_taxonomy_add_lineage1():
    t = Taxonomy()
    lineage = {
        '{}_'.format(rank): '{}{}'.format(rank, 1)
        for rank in TAXON_RANKS
    }
    t.add_lineage(**lineage)
Esempio n. 2
0
def test_taxonomy_add_lineage2():
    t = Taxonomy()
    lineage = {
        '{}_'.format(rank): '{}{}'.format(rank, 1)
        for rank in TAXON_RANKS
    }
    lineage['subspecies'] = 'subspecies1'
    t.add_lineage(**lineage)
Esempio n. 3
0
def taxonomy():
    t = Taxonomy()
    for x in range(10):
        lineage = {
            '{}_'.format(rank): '{}{}'.format(rank, x)
            for rank in TAXON_RANKS
        }
        t.add_lineage(**lineage)

    return t
Esempio n. 4
0
def test_taxonomy_add_lineage3():
    t = Taxonomy()
    lineage = {
        '{}_'.format(rank): '{}{}'.format(rank, 1)
        for rank in TAXON_RANKS
    }
    lineage['subspecies'] = 'subspecies1'
    lineage['cultivar'] = 'cultivar1'
    with pytest.raises(ValueError):
        t.add_lineage(**lineage)
Esempio n. 5
0
def test_taxonomy_serialise_msgpack(taxonomy, tmpdir):
    file_name = tmpdir.join('tx.msgpack').strpath

    taxonomy.save_data(file_name)

    tx2 = Taxonomy(file_name)

    assert taxonomy._taxa == tx2._taxa
Esempio n. 6
0
def test_taxonomy_find_by_name_rank4():
    taxonomy = Taxonomy()
    taxonomy.add_lineage(superkingdom='test_k',
                         phylum='test_p1',
                         order='test_o')
    taxonomy.add_lineage(superkingdom='test_k',
                         phylum='test_p2',
                         order='test_o')
    taxon_id = taxonomy.find_by_name('test_o', rank='order', strict=False)
    assert len(taxon_id) == 2
Esempio n. 7
0
def test_taxonomy_find_by_name_rank3():
    taxonomy = Taxonomy()
    taxonomy.add_lineage(superkingdom='test_k',
                         phylum='test_p1',
                         order='test_o')
    taxonomy.add_lineage(superkingdom='test_k',
                         phylum='test_p2',
                         order='test_o')
    with pytest.raises(KeyError):
        taxon_id = taxonomy.find_by_name('test_o', rank='order')
Esempio n. 8
0
def test_taxonomy_add_taxon2():
    taxonomy = Taxonomy()
    taxonomy.add_lineage(superkingdom='test_k',
                         phylum='test_p1',
                         order='test_o')
    taxon_id = taxonomy.add_lineage(superkingdom='test_k',
                                    phylum='test_p2',
                                    order='test_o')
    with pytest.raises(KeyError):
        taxonomy.add_taxon('test_o', rank='order', parent_id=1)
Esempio n. 9
0
def test_taxonomy_add_taxon1():
    taxonomy = Taxonomy()
    taxonomy.add_lineage(superkingdom='test_k',
                         phylum='test_p1',
                         order='test_o')
    taxon_id = taxonomy.add_lineage(superkingdom='test_k',
                                    phylum='test_p2',
                                    order='test_o')
    parent_id = taxonomy.find_by_name('test_p2', rank='phylum')
    assert taxon_id == taxonomy.add_taxon('test_o',
                                          rank='order',
                                          parent_id=parent_id)
Esempio n. 10
0
def test_taxonomy_parse_gtdb_lineage():
    lineage = 'd__kingdom1;p__phylum1;o__order1;c__class1;f__family1;g__genus1;s__species1'

    result_dict = Taxonomy.parse_gtdb_lineage(lineage)

    assert result_dict == {
        'superkingdom': 'kingdom1',
        'phylum': 'phylum1',
        'order': 'order1',
        'class': 'class1',
        'family': 'family1',
        'genus': 'genus1',
        'species': 'species1'
    }
Esempio n. 11
0
def test_read_ncbi_taxonomy(taxonomy_files):

    taxonomy = Taxonomy()
    taxonomy.read_from_ncbi_dump(*taxonomy_files)

    assert taxonomy.find_by_name('prevotella', rank='genus') == 838