##// END OF EJS Templates
Initial messing around....
Initial messing around. Latex tab completion will have to be done outside the normal completer logic as the completer line splitting logic uses \\ as a special character to split lines on. I probably want to put the latex completions first and it if finds any matches, don't do any other completion logic. The only issue is that might short circuit dir/path matching on windows. Hmmm.

File last commit:

r13351:bc5975b5
r17700:7b6d94ef
Show More
test_deepreload.py
53 lines | 1.8 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."""
Bradley M. Froehle
Reformat test to a standard style.
r6534 #-----------------------------------------------------------------------------
# Imports
#-----------------------------------------------------------------------------
Bradley M. Froehle
Add deepreload functionality test.
r6535 import os
import nose.tools as nt
Bradley M. Froehle
Add deepreload unit test....
r6533 from IPython.testing import decorators as dec
Thomas Kluyver
Fix imports of builtins module
r13351 from IPython.utils.py3compat import builtin_mod_name
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
Reformat test to a standard style.
r6534 #-----------------------------------------------------------------------------
# Test functions begin
#-----------------------------------------------------------------------------
Bradley M. Froehle
Add deepreload unit test....
r6533 @dec.skipif_not_numpy
def test_deepreload_numpy():
Bradley M. Froehle
Add deepreload functionality test.
r6535 "Test that NumPy can be deep reloaded."
Bradley M. Froehle
Add deepreload unit test....
r6533 import numpy
exclude = [
# Standard exclusions:
Thomas Kluyver
Fix imports of builtins module
r13351 'sys', 'os.path', builtin_mod_name, '__main__',
Bradley M. Froehle
Add deepreload unit test....
r6533 # Test-related exclusions:
Bradley M. Froehle
Exclude UserDict when deep reloading NumPy....
r6612 'unittest', 'UserDict',
Bradley M. Froehle
Add deepreload unit test....
r6533 ]
dreload(numpy, exclude=exclude)
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))