##// END OF EJS Templates
Backport PR #12284: Try to elide long completion based on user input.
Backport PR #12284: Try to elide long completion based on user input.

File last commit:

r22971:915ad096
r25702:ee0beefe
Show More
test_deepreload.py
34 lines | 1.1 KiB | text/x-python | PythonLexer
/ IPython / lib / tests / test_deepreload.py
Bradley M. Froehle
Reformat test to a standard style.
r6534 # -*- coding: utf-8 -*-
Bradley M. Froehle
Add deepreload unit test....
r6533 """Test suite for the deepreload module."""
Thomas Kluyver
numpy no longer seems amenable to deep reloading...
r22971 # Copyright (c) IPython Development Team.
# Distributed under the terms of the Modified BSD License.
Bradley M. Froehle
Reformat test to a standard style.
r6534
Bradley M. Froehle
Add deepreload functionality test.
r6535 import os
import nose.tools as nt
Bradley M. Froehle
Clean up sys.path entry.
r6541 from IPython.utils.syspathcontext import prepended_to_syspath
Bradley M. Froehle
Add deepreload functionality test.
r6535 from IPython.utils.tempdir import TemporaryDirectory
Bradley M. Froehle
Add deepreload unit test....
r6533 from IPython.lib.deepreload import reload as dreload
Bradley M. Froehle
Add deepreload functionality test.
r6535 def test_deepreload():
"Test that dreload does deep reloads and skips excluded modules."
with TemporaryDirectory() as tmpdir:
Bradley M. Froehle
Clean up sys.path entry.
r6541 with prepended_to_syspath(tmpdir):
with open(os.path.join(tmpdir, 'A.py'), 'w') as f:
f.write("class Object(object):\n pass\n")
with open(os.path.join(tmpdir, 'B.py'), 'w') as f:
f.write("import A\n")
import A
import B
# Test that A is not reloaded.
obj = A.Object()
dreload(B, exclude=['A'])
nt.assert_true(isinstance(obj, A.Object))
# Test that A is reloaded.
obj = A.Object()
dreload(B)
nt.assert_false(isinstance(obj, A.Object))