コード例 #1
0
 def test_sort_by_closest_TSS_to_edge(self):
     rna_sort = FeatureSet('Transcripts-ex1.txt')
     position = (16000000,17500000)
     # 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.sortByClosestTSSTo(*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[0]),
                                  abs(rna_data.getTSS() - position[1])) >=
                              min(abs(last_rna_data.getTSS() - position[0]),
                                  abs(last_rna_data.getTSS() - position[1]))),
                             "Sort by closest TSS to edge failed")