summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorDan Prince <dprince@redhat.com>2013-01-14 12:54:43 -0500
committerDan Prince <dprince@redhat.com>2013-01-14 12:54:43 -0500
commit33b12d3c18a35f85785227267347f9ac7f7273a4 (patch)
tree5f512d33ae60ced0002a4d691a8d1430688b2309 /tests
parentd74668fbedc29aa4b7868fd3fb8a28d326f43d52 (diff)
downloadoslo-33b12d3c18a35f85785227267347f9ac7f7273a4.tar.gz
oslo-33b12d3c18a35f85785227267347f9ac7f7273a4.tar.xz
oslo-33b12d3c18a35f85785227267347f9ac7f7273a4.zip
Implement importutils.try_import.
Adds a new (simple) importutils.try_import function which can return a module name or a default (by default this is None). This should help clean up some of our try: import foo except... blocks in modules. This commit also drops the dependency on python-extras which is no longer needed. Fixes LP Bug #1099501. Change-Id: I8591f79983bdad67a50d1aaae6dce8428dfce084
Diffstat (limited to 'tests')
-rw-r--r--tests/unit/test_importutils.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/tests/unit/test_importutils.py b/tests/unit/test_importutils.py
index 4c9ff73..3544fe4 100644
--- a/tests/unit/test_importutils.py
+++ b/tests/unit/test_importutils.py
@@ -109,3 +109,11 @@ class ImportUtilsTest(unittest.TestCase):
dt = importutils.import_object('datetime.datetime', 2012, 4, 5)
self.assertTrue(isinstance(dt, sys.modules['datetime'].datetime))
self.assertEqual(dt, datetime.datetime(2012, 4, 5))
+
+ def test_try_import(self):
+ dt = importutils.try_import('datetime')
+ self.assertEqual(sys.modules['datetime'], dt)
+
+ def test_try_import_returns_default(self):
+ foo = importutils.try_import('foo.bar')
+ self.assertEqual(None, foo)