INNER CODE UNIT · Python
_check_variants_match_sequences
sanger-pathogens/ariba · ariba/aln_to_metadata.py:129
def _check_variants_match_sequences(cls, unpadded_sequences, variants, seqs_are_coding, genetic_code=11):
original_code = pyfastaq.sequences.genetic_code
pyfastaq.sequences.genetic_code = genetic_code
for seqname, variant_list in variants.items():
if seqname not in unpadded_sequences:
pyfastaq.sequences.genetic_code = original_code
raise Error('Sequence name "' + seqname + '" given in variants file, but sequence not found')
for variant, description in variant_list:
if not variant.sanity_check_against_seq(unpadded_sequences[seqname], translate_seq=seqs_are_coding):
pyfastaq.sequences.genetic_code = original_code
raise Error('Variant "' + str(variant) + '" for sequence "' + seqname + '" does not match sequence. cannot continue')
pyfastaq.sequences.genetic_code = original_code
return True
@classmethod
def _variant_ids_are_unique(cls, variants):