annotate get_data/kegg_glycan/test_linkKEGG.py @ 1:0a5e0df17054 draft default tip

Uploaded
author chrisb
date Fri, 06 May 2016 08:05:48 -0400
parents 89592faa2875
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
89592faa2875 Uploaded
chrisb
parents:
diff changeset
1 __license__ = "MIT"
89592faa2875 Uploaded
chrisb
parents:
diff changeset
2
89592faa2875 Uploaded
chrisb
parents:
diff changeset
3 import unittest
89592faa2875 Uploaded
chrisb
parents:
diff changeset
4 import linkKEGG as lk
89592faa2875 Uploaded
chrisb
parents:
diff changeset
5
89592faa2875 Uploaded
chrisb
parents:
diff changeset
6
89592faa2875 Uploaded
chrisb
parents:
diff changeset
7 class SimpleUnitTest(unittest.TestCase):
89592faa2875 Uploaded
chrisb
parents:
diff changeset
8 def setUp(self):
89592faa2875 Uploaded
chrisb
parents:
diff changeset
9 import os
89592faa2875 Uploaded
chrisb
parents:
diff changeset
10
89592faa2875 Uploaded
chrisb
parents:
diff changeset
11 os.environ["http_proxy"] = "" # work around for IOError: [Errno url error] invalid proxy for http:
89592faa2875 Uploaded
chrisb
parents:
diff changeset
12 pass
89592faa2875 Uploaded
chrisb
parents:
diff changeset
13
89592faa2875 Uploaded
chrisb
parents:
diff changeset
14 def tearDown(self):
89592faa2875 Uploaded
chrisb
parents:
diff changeset
15 pass
89592faa2875 Uploaded
chrisb
parents:
diff changeset
16
89592faa2875 Uploaded
chrisb
parents:
diff changeset
17 def test_no_db_specified(self):
89592faa2875 Uploaded
chrisb
parents:
diff changeset
18 """should return default glycan path example"""
89592faa2875 Uploaded
chrisb
parents:
diff changeset
19 m = lk.linked_entries_from_kegg()
89592faa2875 Uploaded
chrisb
parents:
diff changeset
20 self.assertIn("path", m)
89592faa2875 Uploaded
chrisb
parents:
diff changeset
21 self.assertIn("G00001", m)
89592faa2875 Uploaded
chrisb
parents:
diff changeset
22
89592faa2875 Uploaded
chrisb
parents:
diff changeset
23
89592faa2875 Uploaded
chrisb
parents:
diff changeset
24 def test_bad_db(self):
89592faa2875 Uploaded
chrisb
parents:
diff changeset
25 """"""
89592faa2875 Uploaded
chrisb
parents:
diff changeset
26 import urllib2
89592faa2875 Uploaded
chrisb
parents:
diff changeset
27
89592faa2875 Uploaded
chrisb
parents:
diff changeset
28 with self.assertRaises(urllib2.HTTPError):
89592faa2875 Uploaded
chrisb
parents:
diff changeset
29 m = lk.linked_entries_from_kegg("john", "sally")
89592faa2875 Uploaded
chrisb
parents:
diff changeset
30
89592faa2875 Uploaded
chrisb
parents:
diff changeset
31 def test_bad_dbentry(self):
89592faa2875 Uploaded
chrisb
parents:
diff changeset
32 """"""
89592faa2875 Uploaded
chrisb
parents:
diff changeset
33 import urllib2
89592faa2875 Uploaded
chrisb
parents:
diff changeset
34
89592faa2875 Uploaded
chrisb
parents:
diff changeset
35 with self.assertRaises(urllib2.HTTPError):
89592faa2875 Uploaded
chrisb
parents:
diff changeset
36 m = lk.linked_entries_from_kegg("ko", "map000")
89592faa2875 Uploaded
chrisb
parents:
diff changeset
37
89592faa2875 Uploaded
chrisb
parents:
diff changeset
38 def test_no_links_btn_dbs(self):
89592faa2875 Uploaded
chrisb
parents:
diff changeset
39 """ should return an empty string, cannot write None to file"""
89592faa2875 Uploaded
chrisb
parents:
diff changeset
40 m = lk.linked_entries_from_kegg("br", "gl:G10496")
89592faa2875 Uploaded
chrisb
parents:
diff changeset
41 self.assertEquals(m,"")
89592faa2875 Uploaded
chrisb
parents:
diff changeset
42
1
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
43 def test_enzyme_glycan_search_1(self):
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
44 """
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
45 test "2.4.99.1 ec: " returns
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
46 """
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
47 m = lk.linked_entries_from_kegg("glycan", "2.4.99.1 ec:")
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
48 self.assertIn("2.4.99.1", m)
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
49
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
50
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
51 def test_enzyme_glycan_search_2(self):
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
52 """
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
53 test "2.4.99.1 ec: 2.4.99.6" returns
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
54 """
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
55 m = lk.linked_entries_from_kegg("glycan", "2.4.99.1 ec: 2.4.99.6" )
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
56 self.assertIn("2.4.99.1", m)
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
57 self.assertIn("2.4.99.6", m)
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
58
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
59 def test_enzyme_glycan_search_3(self):
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
60 """
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
61 test "2.4.99.1 ec:2.4.99.6" returns
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
62 """
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
63 m = lk.linked_entries_from_kegg("glycan", "2.4.99.1 ec:2.4.99.6" )
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
64 self.assertIn("2.4.99.1", m)
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
65 self.assertIn("2.4.99.6", m)
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
66
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
67 def test_enzyme_glycan_search_4(self):
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
68 """
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
69 test "2.4.99.1+2.4.99.6" returns. This time '+' is or.
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
70 """
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
71 m = lk.linked_entries_from_kegg("glycan", "2.4.99.1+2.4.99.6" )
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
72 self.assertIn("2.4.99.1", m)
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
73 self.assertIn("2.4.99.6", m)
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
74
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
75 def test_enzyme_glycan_search_4b(self):
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
76 """
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
77 test "2.4.99.1+ 2.4.99.6" returns. This time '+' is or.
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
78 """
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
79 m = lk.linked_entries_from_kegg("glycan", "2.4.99.1+ 2.4.99.6" )
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
80 self.assertIn("2.4.99.1", m)
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
81 self.assertIn("2.4.99.6", m)
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
82
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
83 def test_enzyme_glycan_search_5(self):
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
84 """
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
85 test "2.4.99.1 2.4.99.6" returns. Space also means or for the link db.
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
86 """
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
87 m = lk.linked_entries_from_kegg("glycan", "2.4.99.1 2.4.99.6" )
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
88 self.assertIn("2.4.99.1", m)
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
89 self.assertIn("2.4.99.6", m)
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
90
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
91
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
92 def test_enzyme_glycan_search_6(self):
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
93 """
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
94 test "2.4.99.1+nana+2.4.99.6" returns. strangely when inserting junk it still works.
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
95 """
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
96 m = lk.linked_entries_from_kegg("glycan", "2.4.99.1+nana+2.4.99.6" )
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
97 self.assertIn("2.4.99.1", m)
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
98 self.assertIn("2.4.99.6", m)
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
99
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
100 def test_enzyme_glycan_search_6b(self):
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
101 """
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
102 test "2.4.99.1 nana 2.4.99.6" returns. strangely when inserting junk it still works.
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
103 """
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
104 m = lk.linked_entries_from_kegg("glycan", "2.4.99.1+nana+2.4.99.6" )
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
105 self.assertIn("2.4.99.1", m)
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
106 self.assertIn("2.4.99.6", m)
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
107
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
108 def test_enzyme_glycan_search_7(self):
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
109 """
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
110 test "\"2.4.99.1\"" is a bad request as it includes quotes.
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
111 """
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
112 from urllib2 import HTTPError
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
113 with self.assertRaises(HTTPError):
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
114 m = lk.linked_entries_from_kegg("glycan", "\"2.4.99.1\"" )
0a5e0df17054 Uploaded
chrisb
parents: 0
diff changeset
115