def test_sort_by_distance(self): rna_sort = FeatureSet('Transcripts-ex1.txt') position = 4250000 # Do sort on distance # Sort is done in place, so assignment is not required # however the sort function should return a reference to # the initial object result = rna_sort.sortByDistanceFrom(position) self.assertEqual(result,rna_sort, "Returned object doesn't match subject") # Check that each distance is greater than the previous one last_rna_data = None for rna_data in rna_sort: if not last_rna_data: last_rna_data = rna_data else: self.assertTrue((abs(rna_data.getTSS() - position) >= abs(last_rna_data.getTSS() - position)), "Sort by distance failed")