from mlstmyfasta.engine.annotations import annotate_from_genbank, fetch_ncbi_genbank from Bio import SeqIO from mlstmyfasta.engine.data.genomics import AnnotatedString async def test_fetch_ncbi_genbank_with_id_works(): assert len((await fetch_ncbi_genbank("CP011448.1")).sequence) > 0 async def test_annotate_from_genbank_for_adk_annotation(): sequence = SeqIO.read("tests/resources/tohama_I_bpertussis.fasta", "fasta").seq annotated_sequence = await annotate_from_genbank("CP011448.1", "bpertussis_tohamaI", str(sequence), max_annotation_length=750, gene_targets=set(["adk"])) assert isinstance(annotated_sequence, AnnotatedString) assert len(annotated_sequence.annotations) >= 1 assert annotated_sequence.annotations[0].type == "gene" assert "adk" in annotated_sequence.annotations[0].feature_properties["gene"]