コード例 #1
0
 def test_sort_by_closest_distance_to_edge(self):
     rna_sort = FeatureSet('Transcripts-ex1.txt')
     position = 4250000
     # Do sort
     # 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.sortByClosestEdgeTo(position)
     self.assertEqual(result,rna_sort,
                      "Returned object doesn't match subject")
     # Check that the closest distances are in ascending order
     last_rna_data = None
     for rna_data in rna_sort:
         if not last_rna_data:
             last_rna_data = rna_data
         else:
             self.assertTrue((min(abs(rna_data.getTSS() - position),
                                  abs(rna_data.getTES() - position)) >=
                              min(abs(last_rna_data.getTSS() - position),
                                  abs(last_rna_data.getTES() - position))),
                             "Sort by closest distance to edge failed")