##// END OF EJS Templates
push() now swallows syntax errors and immediately produces a 'ready'...
push() now swallows syntax errors and immediately produces a 'ready' state. This is intended, as the invalid input may in fact be OK with ipython extensions, but that can only be ascertained by the kernel, so the client should send this right away to the kernel.

File last commit:

r964:0a2f2117
r2635:6112cd14
Show More
runtests.py
31 lines | 713 B | text/x-python | PythonLexer
""" Run ipython unit tests
This should be launched from inside ipython by "%run runtests.py"
or through ipython command line "ipython runtests.py".
"""
from IPython.external.path import path
import pprint,os
import IPython.ipapi
ip = IPython.ipapi.get()
def main():
all = path('.').files('test_*py')
results = {}
res_exc = [None]
def exchook(self,*e):
res_exc[0] = [e]
ip.IP.set_custom_exc((Exception,), exchook)
startdir = os.getcwd()
for test in all:
print test
res_exc[0] = 'ok'
os.chdir(startdir)
ip.runlines(test.text())
results[str(test)] = res_exc[0]
os.chdir(startdir)
pprint.pprint(results)
main()