5 from htsworkflow.util.alphanum import alphanum
7 class testAlphanum(unittest.TestCase):
9 unsorted = ['z5', 'b3', 'b10', 'a001', 'a2']
10 sorted = [ 'a001', 'a2', 'b3', 'b10', 'z5']
11 scratch = copy.copy(unsorted)
12 scratch.sort(alphanum)
14 for i in xrange(len(scratch)):
15 self.failIfEqual(scratch[i], unsorted[i])
16 for i in xrange(len(scratch)):
17 self.failUnlessEqual(scratch[i], sorted[i])
19 def test_numbers(self):
20 unsorted = [5,7,10,18,-1,3]
21 sorted = [-1,3,5,7,10,18]
22 scratch = copy.copy(unsorted)
23 scratch.sort(alphanum)
25 for i in xrange(len(scratch)):
26 self.failIfEqual(scratch[i], unsorted[i])
27 for i in xrange(len(scratch)):
28 self.failUnlessEqual(scratch[i], sorted[i])
32 return unittest.makeSuite(testAlphanum, 'test')
34 if __name__ == "__main__":
35 unittest.main(defaultTest='suite')