def test_compare_then_get_letter_recursively(): host = "AACCGCGGTGAGCATTTCAAGGGTACAACGGTTCAA" parasite = "CGCGGTGAGCATTTCAAGGGTACAACGGTTCAA" host_triplets = ga.convert_seq_to_codons(host) parasite_triplets = ga.convert_seq_to_codons(parasite) codon_to_codon_extended = ga.generate_swaptable(ga.codon_to_aa, ga.aa_to_codon_extended) host_tuplelist = ga.convert_codonlist_to_tuplelist( host_triplets, codon_to_codon_extended) parasite_tuplelist = ga.convert_codonlist_to_tuplelist( parasite_triplets, codon_to_codon_extended) host_letter = ("C", [1, 0, 0]) parasite_letter = ("C", [0, 0, 0]) result = ga.compare_then_get_letter_recursively(host_tuplelist, parasite_tuplelist, host_letter, parasite_letter) expected = ( "Finished parasite sequence, match found! Ending host position:[11, 0, 2]" ) assert result == expected no_result = ga.compare_then_get_letter_recursively(host_tuplelist, (["CAA"], ["CCC"]), host_letter, parasite_letter) assert no_result == "No match for this starting codon position"
def test_convert_codonlist_to_tuplelist(): codon_to_codon_extended = ga.generate_swaptable(ga.codon_to_aa, ga.aa_to_codon_extended) result = ga.convert_codonlist_to_tuplelist(["GTA", "CCC", "GCT", "GCG"], codon_to_codon_extended) assert result == [("GTX", ), ("CCX", ), ("GCX", ), ("GCX", )]
def test_find_partial_overlaps(): records = list(SeqIO.parse("tests/data/example.fa", "fasta")) swaptable = ga.generate_swaptable(ga.codon_to_aa, ga.aa_to_codon_extended) host = str(records[0].seq) parasite = str(records[7].seq) result = ga.find_partial_overlaps(host, parasite, swaptable, verbose=True) assert result["f_0"] == [0, 4, 387]
def test_make_genealloy(): records = list(SeqIO.parse("tests/data/example.fa", "fasta")) swaptable = ga.generate_swaptable(ga.codon_to_aa, ga.aa_to_codon_extended) host = str(records[0].seq) parasite = str(records[2].seq) result = ga.make_genealloy(host, parasite, swaptable, verbose=True) assert result["f_0"] == [55, 155] parasite = str(records[3].seq) result = ga.make_genealloy(host, parasite, swaptable, verbose=True) assert result["f_0"] == [] parasite = str(records[5].seq) result = ga.make_genealloy(host, parasite, swaptable, verbose=True) assert result["f_1"] == [0] parasite = str(records[6].seq) result = ga.make_genealloy(host, parasite, swaptable, verbose=True) assert result["f_2"] == [1, 92, 133, 281]
def test_generate_swaptable(): codon_to_codon_extended = ga.generate_swaptable(ga.codon_to_aa, ga.aa_to_codon_extended) assert codon_to_codon_extended["TTA"] == ("TTR", "CTX", "YTR")