def trim_seq(self, start, end): new = record_processing.trim_sequence(self.record, start, end) # since func called, alter start/end for these slice checks if start < 0: start = 0 if end < 0: end = len(self.seq) # check that Bio.Seq slices as expected assert str(self.record.seq[start:end]) == self.seq[start:end] # check that the record's seq was sliced assert str(new.seq) == self.seq[start:end] # return for further checking return new
def test_bad_values(self): # start outside seq with self.assertRaises(ValueError): record_processing.trim_sequence(self.record, start=10, end=-1) # end outside seq with self.assertRaises(ValueError): record_processing.trim_sequence(self.record, start=-1, end=20) # start after end with self.assertRaises(ValueError): record_processing.trim_sequence(self.record, start=7, end=4)
def test_no_change(self): new = record_processing.trim_sequence(self.record, start=-1, end=-1) assert new.seq == self.record.seq