##// END OF EJS Templates
Handle some tricky Comm lifecycle issues...
Handle some tricky Comm lifecycle issues * If the comm was a primary comm, but there was an error opening it, _closed was False, which is wrong * If Comm.close() was called, but an error happened, it still appeared to be open This change makes the _closed attribute more conservative. If _closed is False, the comm is definitely open for messages. If _closed is True, we either didn't initialize correctly, or we tried to close at some point.

File last commit:

r11031:ffddf45f
r18454:d2c994e5
Show More
test_importstring.py
39 lines | 1.2 KiB | text/x-python | PythonLexer
"""Tests for IPython.utils.importstring."""
#-----------------------------------------------------------------------------
# Copyright (C) 2013 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.
#-----------------------------------------------------------------------------
#-----------------------------------------------------------------------------
# Imports
#-----------------------------------------------------------------------------
import nose.tools as nt
from IPython.utils.importstring import import_item
#-----------------------------------------------------------------------------
# Tests
#-----------------------------------------------------------------------------
def test_import_plain():
"Test simple imports"
import os
os2 = import_item('os')
nt.assert_true(os is os2)
def test_import_nested():
"Test nested imports from the stdlib"
from os import path
path2 = import_item('os.path')
nt.assert_true(path is path2)
def test_import_raises():
"Test that failing imports raise the right exception"
nt.assert_raises(ImportError, import_item, 'IPython.foobar')