source: orange-bioinformatics/tests/test_kegg.py @ 1632:9cf919d0f343

Revision 1632:9cf919d0f343, 4.7 KB checked in by mitar, 2 years ago (diff)

Fixing imports.

RevLine 
[1533]1import unittest
[1632]2
3from Orange.bioinformatics import obiKEGG2 as kegg
[1533]4
5#from obiKEGGservices import
6#from
7
8#class TestServices(unittest.TestCase):
9#    def test_services(self):
[1548]10#        service = kegg.service.web_service()
[1533]11#        service.binfo("gb")
12#        service.bfind("gb E-cadherin human")
13#        service.bget("eco:b0002 hin:tRNA-Cys-1")
14       
15class TestGenome(unittest.TestCase):
16    def test_genome(self):
17        genome = kegg.KEGGGenome()
18        org_codes = genome.keys()
19       
20        for code in org_codes[:10]:
21            self.assertTrue(code in genome)
22            self.assertTrue(genome.has_key(code))
23            entry = genome[code]
24            self.assertEqual(entry.entry_key, code)
25            self.assertIsInstance(entry, genome.ENTRY_TYPE)
26            self.assertIsInstance(entry.name, str)
27            self.assertIsInstance(entry.taxid, str)
28           
29           
30        self.assertTrue(genome.get_entry("No such name --,,;;';p[[]&&&") is None)
31        self.assertRaises(KeyError, genome.__getitem__, ("No such name --,,;;';p[[]&&&"))
32       
33        self.assertTrue(genome.search("homo sapiens")[0] == "hsa")
34        entry = genome['hsa']
35        self.assertEqual(entry.taxid, "9606")
36       
37       
38class TestGenes(unittest.TestCase):
39    def _tester(self, org):
40        genes = kegg.KEGGGenes(org)
[1548]41        keys = genes.keys()[:10]
42        all_entries = []
43        for gene in keys:
[1533]44            self.assertTrue(gene in genes)
45            self.assertTrue(genes.has_key(gene))
46            entry = genes[gene]
[1548]47            self.assertEqual(entry.entry_key,
48                             genes.get(gene).entry_key,
49                             "__getitem__ and get return different result")
[1533]50            self.assertTrue(gene.endswith(entry.entry_key))
51            self.assertIsInstance(entry, genes.ENTRY_TYPE)
52            self.assertIsInstance(entry.aliases(), list)
53            self.assertTrue(all(isinstance(a, basestring) for a in entry.aliases()))
[1548]54            all_entries.append(entry)
55           
56        self.assertSequenceEqual([(e.name, e.entry_key) for e in all_entries],
57                                 [(e.name, e.entry_key) for e in genes.batch_get(keys)],
58                                 "batch_get returns different result")
[1533]59           
60    def test_hsa(self):
61        self._tester("hsa")
62       
63    def test_sce(self):
[1548]64        self._tester("sce")
[1533]65       
[1548]66    def test_ddi(self):
67        self._tester("ddi")
[1533]68   
69class TestPathways(unittest.TestCase):
70    def _tester(self, id):
71        pathways = kegg.KEGGPathways()
72       
73        self.assertRaises(KeyError, pathways.__getitem__, ("--invalid--"))
74        pathway = pathways[id]
75        self.assertTrue(id.endswith(pathway.entry_key))
76        self.assertIsInstance(pathway, pathways.ENTRY_TYPE)
[1548]77        genes = pathway.gene or []
[1533]78       
79        path = kegg.KEGGPathway(id)
[1548]80        self.assertEqual(sorted(genes), sorted(path.genes()))
81       
[1533]82       
83    def test_1(self):
84        self._tester("ec00190")
85           
86    def test_2(self):
87        self._tester("hsa00190")
88       
[1548]89    def test_3(self):
90        self._tester("sce00190")
91       
[1533]92       
93class TestOrganism(unittest.TestCase):
94    def _tester(self, org):
95        self.organism = org = kegg.KEGGOrganism(org)
96        genes = org.genes
97        self.assertTrue(all(g.startswith(org.org_code) for g in genes))
98        pathways = org.pathways()
99        pathways_for_genes = org.pathways(with_ids=list(genes)[:5])
100        self.assertTrue(all(p.startswith("path:" + org.org_code) \
101                            for p in pathways + pathways_for_genes))
102       
103    def test_hsa(self):
104        self._tester("hsa")
105        # Test search
106        self.assertEqual(self.organism.org_code,
107                         kegg.KEGGOrganism("Homo sapiens").org_code)
108       
109    def test_sce(self):
110        self._tester("sce")
111       
[1548]112       
113class TestUtils(unittest.TestCase):
114    def test_batch_iter(self):
115        iter = range(25)
116        expected = [range(10),
117                     range(10, 20),
118                     range(20, 25)]
119        for exp, batch in zip(expected, 
120                              kegg.databases.batch_iter(iter, 10)
121                              ):
122            self.assertEqual(exp, batch)
123   
124   
[1533]125class TestOld(unittest.TestCase):
126    def test(self):
127        p = kegg.KEGGPathway("sce00010")
128        print p.genes
129        print p.reactions
130        print p.compounds
131        print p.image
132        g = kegg.KEGGGenome()
133        org = kegg.KEGGOrganism("Homo sapiens")
134        print list(org.genes)[:10]
135#        org.gene_aliases
136        print org.pathways(with_ids=org.genes.keys()[:5])
137#        print org.enzymes()
138        print org.get_enriched_pathways(org.genes.keys()[:10])
[1632]139        print org.genematcher
Note: See TracBrowser for help on using the repository browser.