From: Diane Trout Date: Wed, 24 Dec 2008 23:33:51 +0000 (+0000) Subject: Add test cases for alphanum sort X-Git-Tag: stanford.caltech-merged-database-2009-jan-15~6 X-Git-Url: http://woldlab.caltech.edu/gitweb/?p=htsworkflow.git;a=commitdiff_plain;h=222450eec7034ec67a4c3714c8b4a934253ea075 Add test cases for alphanum sort --- diff --git a/htsworkflow/util/test/test_alphanum.py b/htsworkflow/util/test/test_alphanum.py new file mode 100644 index 0000000..bfb2eda --- /dev/null +++ b/htsworkflow/util/test/test_alphanum.py @@ -0,0 +1,39 @@ +import copy +import os +import unittest + +from htsworkflow.util.alphanum import alphanum + +class testAlphanum(unittest.TestCase): + def test_string(self): + unsorted = ['z5', 'b3', 'b10', 'a001', 'a2'] + sorted = [ 'a001', 'a2', 'b3', 'b10', 'z5'] + scratch = copy.copy(unsorted) + scratch.sort(alphanum) + + for i in xrange(len(scratch)): + self.failIfEqual(scratch[i], unsorted[i]) + for i in xrange(len(scratch)): + self.failUnlessEqual(scratch[i], sorted[i]) + + def test_numbers(self): + unsorted = [5,7,10,18,-1,3] + sorted = [-1,3,5,7,10,18] + scratch = copy.copy(unsorted) + scratch.sort(alphanum) + + for i in xrange(len(scratch)): + self.failIfEqual(scratch[i], unsorted[i]) + for i in xrange(len(scratch)): + self.failUnlessEqual(scratch[i], sorted[i]) + + +def suite(): + return unittest.makeSuite(testAlphanum, 'test') + +if __name__ == "__main__": + unittest.main(defaultTest='suite') + + + +