Ejemplo n.º 1
0
    def _get_mutation_positions(self, start):
        amr_seq = self.get_amr_gene_seq()
        genome_seq = self.get_genome_contig_hsp_seq()

        # @formatter:off
        return [
            NucleotideMutationPosition(i, amr_seq, genome_seq, start)
            for i in self._get_match_positions()
        ]
    def testMutationPositionGapReference(self):
        mutation_position = 0
        # @formatter:off
        database_amr_gene_string = "-TCG"
        input_genome_string = "ATCG"
        # @formatter:on
        amr_gene_start = 1

        mutation = NucleotideMutationPosition(mutation_position, database_amr_gene_string, input_genome_string,
                                              amr_gene_start)

        self.assertEqual(mutation.get_mutation_position(), 1, 'Incorrect nucleotide position')
        self.assertEqual(mutation.get_database_amr_gene_mutation(), '-', 'Incorrect database mutation')
        self.assertEqual(mutation.get_input_genome_mutation(), 'A', 'Incorrect query mutation')
        self.assertEqual(mutation.get_mutation_string_short(), '-1A', 'Incorrect string')
    def testMutationPositionNucleotideEnd(self):
        mutation_position = 8
        # @formatter:off
        database_amr_gene_string = "ATCGATCGA"
        input_genome_string = "ATCGATCGG"
        # @formatter:on
        amr_gene_start = 1

        mutation = NucleotideMutationPosition(mutation_position, database_amr_gene_string, input_genome_string,
                                              amr_gene_start)

        self.assertEqual(mutation.get_mutation_position(), 9, 'Incorrect nucleotide position')
        self.assertEqual(mutation.get_database_amr_gene_mutation(), 'A', 'Incorrect database mutation')
        self.assertEqual(mutation.get_input_genome_mutation(), 'G', 'Incorrect query mutation')
        self.assertEqual(mutation.get_mutation_string_short(), 'A9G', 'Incorrect string')