Mercurial > repos > chrisb > gap_all_glycan_tools
diff get_data/kegg_glycan/test_findKEGG.py @ 0:89592faa2875 draft
Uploaded
author | chrisb |
---|---|
date | Wed, 23 Mar 2016 14:35:56 -0400 |
parents | |
children | 0a5e0df17054 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/get_data/kegg_glycan/test_findKEGG.py Wed Mar 23 14:35:56 2016 -0400 @@ -0,0 +1,60 @@ +__license__ = "MIT" + +import unittest +import findKEGG as fk + + +class SimpleUnitTest(unittest.TestCase): + def setUp(self): + import os + + os.environ["http_proxy"] = "" # work around for IOError: [Errno url error] invalid proxy for http: + pass + + def tearDown(self): + pass + + def test_no_db_specified(self): + """should raise error""" + with self.assertRaises(IOError): + m = fk.find_entries_in_KEGG([], " ") + with self.assertRaises(IOError): + m = fk.find_entries_in_KEGG("", " ") + with self.assertRaises(IOError): + m = fk.find_entries_in_KEGG(None, " ") + + def test_no_query_specified(self): + """should raise error""" + with self.assertRaises(IOError): + m = fk.find_entries_in_KEGG("glycan", "") + with self.assertRaises(IOError): + m = fk.find_entries_in_KEGG("glycan", []) + with self.assertRaises(IOError): + m = fk.find_entries_in_KEGG("glycan", None) + + + def test_bad_db(self): + """should raise error""" + import urllib2 + + with self.assertRaises(urllib2.HTTPError): + m = fk.find_entries_in_KEGG("john", "glucose") + + def test_unfindable_entry(self): + """should return None""" + m = fk.find_entries_in_KEGG("glycan", "sally") + self.assertIsNone(m) + + def test_find_example(self): + m = fk.find_entries_in_KEGG("glycan", "glucose") + self.assertIsNotNone(m) + self.assertIn("GDP-glucose", m) + + def test_query_has_newlines(self): + """ + should be fine and return entries + """ + m = fk.find_entries_in_KEGG("glycan", "glucose\n UDP") + self.assertIsNotNone(m) + self.assertIn("UDP-D-glucose", m) +