Change unittest2 back into unittest.
[htsworkflow.git] / htsworkflow / pipelines / test / test_genome_mapper.py
1 from unittest import TestCase
2
3 from StringIO import StringIO
4 from htsworkflow.pipelines import genome_mapper
5
6 class testGenomeMapper(TestCase):
7     def test_construct_mapper(self):
8         genomes = {
9         'Arabidopsis thaliana': {'v01212004': '/arabidopsis'},
10         'Homo sapiens': {'hg18': '/hg18'},
11         'Mus musculus': {'mm8': '/mm8',
12                         'mm9': '/mm9',
13                         'mm10': '/mm10'},
14         'Phage': {'174': '/phi'},
15         }
16         genome_map = genome_mapper.constructMapperDict(genomes)
17         
18         self.failUnlessEqual("%(Mus musculus|mm8)s" % (genome_map), "/mm8")
19         self.failUnlessEqual("%(Phage|174)s" % (genome_map), "/phi")
20         self.failUnlessEqual("%(Mus musculus)s" % (genome_map), "/mm10")
21         self.failUnlessEqual("%(Mus musculus|mm8)s" % (genome_map), "/mm8")
22         self.failUnlessEqual("%(Mus musculus|mm10)s" % (genome_map), "/mm10")
23         
24         self.failUnlessEqual(len(genome_map.keys()), 6)
25         self.failUnlessEqual(len(genome_map.values()), 6)
26         self.failUnlessEqual(len(genome_map.items()), 6)
27         
28         
29 def suite():
30     from unittest import TestSuite, defaultTestLoader
31     suite = TestSuite()
32     suite.addTests(defaultTestLoader.loadTestsFromTestCase(testGenomeMapper))
33     return suite
34
35
36 if __name__ == "__main__":
37     from unittest import main
38     main(defaultTest="suite")