      """
      class_count = len(classes)
      suite_class = type(suite)
      bins = [suite_class() for i in range(class_count + 1)]
      partition_suite(suite, classes, bins)
      for i in range(class_count):
          bins[0].addTests(bins[i + 1])
      return bins[0]
  
  
 
</s> remove def partition_suite(suite, classes, bins):
 </s> add def partition_suite(suite, classes, bins, reverse=False): </s> remove             partition_suite(test, classes, bins)
 </s> add             partition_suite(test, classes, bins, reverse=reverse) </s> remove         return reorder_suite(suite, self.reorder_by)
 </s> add         return reorder_suite(suite, self.reorder_by, self.reverse)
    partition_suite(suite, classes, bins, reverse=reverse)
      """
      class_count = len(classes)
      suite_class = type(suite)
      bins = [suite_class() for i in range(class_count + 1)]
    partition_suite(suite, classes, bins, reverse=reverse)
      for i in range(class_count):
          bins[0].addTests(bins[i + 1])
      return bins[0]
  
  
keep keep keep keep replace keep keep keep keep keep
 Fixed #23742 -- Added an option to reverse tests order.

This is useful for debugging side effects affecting tests that
are usually executed before a given test. Full suite and pair
tests sort cases more or less deterministically, thus some test
cross-dependencies are easier to reveal by reversing the order.

Thanks Preston Timmons for the review. 
django/test/runner.py