Skip to content

Commit 085f868

Browse files
author
Matt George
committed
Merge branch 'import_error'
2 parents 3af623f + 4161f3d commit 085f868

File tree

2 files changed

+13
-14
lines changed

2 files changed

+13
-14
lines changed

pyres/__init__.py

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -19,15 +19,12 @@ def safe_str_to_class(s):
1919
klass = lst[-1]
2020
mod_list = lst[:-1]
2121
module = ".".join(mod_list)
22-
try:
23-
mod = my_import(module)
24-
if hasattr(mod, klass):
25-
return getattr(mod, klass)
26-
else:
27-
return None
28-
except ImportError:
29-
return None
30-
22+
mod = my_import(module)
23+
if hasattr(mod, klass):
24+
return getattr(mod, klass)
25+
else:
26+
raise ImportError('')
27+
3128
def str_to_class(s):
3229
"""Alternate helper function to map string class names to module classes."""
3330
lst = s.split(".")

tests/__init__.py

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -50,11 +50,13 @@ def test_str_to_class():
5050
assert ret == Basic
5151
assert str_to_class('hello.World') == None
5252

53-
def test_safe_str_to_class():
54-
from pyres import safe_str_to_class
55-
assert safe_str_to_class('tests.Basic') == Basic
56-
assert safe_str_to_class('test.Mine') == None
57-
assert safe_str_to_class('hello.World') == None
53+
class ImportTest(unittest.TestCase):
54+
def test_safe_str_to_class(self):
55+
from pyres import safe_str_to_class
56+
assert safe_str_to_class('tests.Basic') == Basic
57+
self.assertRaises(ImportError, safe_str_to_class, 'test.Mine')
58+
self.assertRaises(ImportError, safe_str_to_class, 'tests.World')
59+
5860

5961
class PyResTests(unittest.TestCase):
6062
def setUp(self):

0 commit comments

Comments
 (0)