##// END OF EJS Templates
Remove accidentally introduced runtime nose dependencies.
Fernando Perez -
Show More
@@ -55,9 +55,6 b' import unittest'
55 # This is Michele Simionato's decorator module, kept verbatim.
55 # This is Michele Simionato's decorator module, kept verbatim.
56 from IPython.external.decorator import decorator, update_wrapper
56 from IPython.external.decorator import decorator, update_wrapper
57
57
58 # Our own modules
59 import nosepatch # monkeypatch nose
60
61 # We already have python3-compliant code for parametric tests
58 # We already have python3-compliant code for parametric tests
62 if sys.version[0]=='2':
59 if sys.version[0]=='2':
63 from _paramtestpy2 import parametric, ParametricTestCase
60 from _paramtestpy2 import parametric, ParametricTestCase
@@ -22,6 +22,7 b' from __future__ import absolute_import'
22 # Module imports
22 # Module imports
23 #-----------------------------------------------------------------------------
23 #-----------------------------------------------------------------------------
24
24
25 # Stdlib
25 import os
26 import os
26 import os.path as path
27 import os.path as path
27 import signal
28 import signal
@@ -31,9 +32,16 b' import tempfile'
31 import time
32 import time
32 import warnings
33 import warnings
33
34
35 # Note: monkeypatch!
36 # We need to monkeypatch a small problem in nose itself first, before importing
37 # it for actual use. This should get into nose upstream, but its release cycle
38 # is slow and we need it for our parametric tests to work correctly.
39 from . import nosepatch
40 # Now, proceed to import nose itself
34 import nose.plugins.builtin
41 import nose.plugins.builtin
35 from nose.core import TestProgram
42 from nose.core import TestProgram
36
43
44 # Our own imports
37 from IPython.utils import genutils
45 from IPython.utils import genutils
38 from IPython.utils.platutils import find_cmd, FindCmdError
46 from IPython.utils.platutils import find_cmd, FindCmdError
39 from . import globalipapp
47 from . import globalipapp
@@ -46,9 +46,6 b' try:'
46 except:
46 except:
47 from ._doctest26 import TestResults
47 from ._doctest26 import TestResults
48
48
49 # Our own, a nose monkeypatch
50 from . import nosepatch
51
52 # We already have python3-compliant code for parametric tests
49 # We already have python3-compliant code for parametric tests
53 if sys.version[0]=='2':
50 if sys.version[0]=='2':
54 from ._paramtestpy2 import ParametricTestCase
51 from ._paramtestpy2 import ParametricTestCase
@@ -31,7 +31,14 b' import re'
31 import sys
31 import sys
32 import tempfile
32 import tempfile
33
33
34 import nose.tools as nt
34 try:
35 # These tools are used by parts of the runtime, so we make the nose
36 # dependency optional at this point. Nose is a hard dependency to run the
37 # test suite, but NOT to use ipython itself.
38 import nose.tools as nt
39 has_nose = True
40 except ImportError:
41 has_nose = False
35
42
36 from IPython.utils import genutils, platutils
43 from IPython.utils import genutils, platutils
37
44
@@ -47,8 +54,9 b' def %(name)s(*a,**kw):'
47 return nt.%(name)s(*a,**kw)
54 return nt.%(name)s(*a,**kw)
48 """
55 """
49
56
50 for _x in [a for a in dir(nt) if a.startswith('assert')]:
57 if has_nose:
51 exec _tpl % dict(name=_x)
58 for _x in [a for a in dir(nt) if a.startswith('assert')]:
59 exec _tpl % dict(name=_x)
52
60
53 #-----------------------------------------------------------------------------
61 #-----------------------------------------------------------------------------
54 # Functions and classes
62 # Functions and classes
@@ -228,6 +236,8 b' def ipexec_validate(fname, expected_out, expected_err=None,'
228 None
236 None
229 """
237 """
230
238
239 import nose.tools as nt
240
231 out, err = ipexec(fname)
241 out, err = ipexec(fname)
232 nt.assert_equals(out.strip(), expected_out.strip())
242 nt.assert_equals(out.strip(), expected_out.strip())
233 if expected_err:
243 if expected_err:
General Comments 0
You need to be logged in to leave comments. Login now