From 222450eec7034ec67a4c3714c8b4a934253ea075 Mon Sep 17 00:00:00 2001 From: Diane Trout Date: Wed, 24 Dec 2008 23:33:51 +0000 Subject: [PATCH] Add test cases for alphanum sort --- htsworkflow/util/test/test_alphanum.py | 39 ++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 htsworkflow/util/test/test_alphanum.py 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') + + + + -- 2.30.2