def test_should_remove_gap(self): # setup problem = MSA(score_list=[]) problem.identifiers = ['seq1', 'seq2', 'seq3'] problem.number_of_variables = 3 msa = MSASolution(problem, msa=[('seq1', 'AC---TGAC'), ('seq2', 'AC---TGAC'), ('seq3', 'AC---TGAC')]) msa.remove_gap_from_sequence(0, 2) msa.remove_gap_from_sequence(1, 2) msa.remove_gap_from_sequence(2, 2) # check self.assertEqual(['AC--TGAC', 'AC--TGAC', 'AC--TGAC'], msa.decode_alignment_as_list_of_sequences())
def test_should_remove_gap_case_b(self): # setup problem = MSA(score_list=[]) problem.identifiers = ['seq1', 'seq2'] problem.number_of_variables = 2 msa = MSASolution(problem, msa=[('seq1', 'AB--CD-E'), ('seq2', 'AB--CDE-')]) msa.remove_gap_from_sequence(0, 3) self.assertEqual(['AB-CD-E', 'AB--CDE-'], msa.decode_alignment_as_list_of_sequences()) msa.remove_gap_from_sequence(0, 2) self.assertEqual(['ABCD-E', 'AB--CDE-'], msa.decode_alignment_as_list_of_sequences()) msa.remove_gap_from_sequence(1, 3) self.assertEqual(['ABCD-E', 'AB-CDE-'], msa.decode_alignment_as_list_of_sequences()) msa.remove_gap_from_sequence(1, 2) self.assertEqual(['ABCD-E', 'ABCDE-'], msa.decode_alignment_as_list_of_sequences())