##// END OF EJS Templates
Work in multiple places to improve state of the test suite....
Work in multiple places to improve state of the test suite. With these changes, on my system now all the test sub-suites pass except for the Twisted one (see https://bugs.launchpad.net/ipython/+bug/504515 for details on that one).

File last commit:

r2229:46a9a124
r2398:f173ff8e
Show More
importstring.py
32 lines | 1.0 KiB | text/x-python | PythonLexer
Brian Granger
A number of changes to how traitlets and components work....
r2229 #!/usr/bin/env python
# encoding: utf-8
"""
A simple utility to import something by its string name.
Authors:
* Brian Granger
"""
#-----------------------------------------------------------------------------
# Copyright (C) 2008-2009 The IPython Development Team
#
# Distributed under the terms of the BSD License. The full license is in
# the file COPYING, distributed as part of this software.
#-----------------------------------------------------------------------------
#-----------------------------------------------------------------------------
# Functions and classes
#-----------------------------------------------------------------------------
def import_item(name):
"""Import and return bar given the string foo.bar."""
package = '.'.join(name.split('.')[0:-1])
obj = name.split('.')[-1]
execString = 'from %s import %s' % (package, obj)
try:
exec execString
except SyntaxError:
raise ImportError("Invalid class specification: %s" % name)
exec 'temp = %s' % obj
return temp