##// END OF EJS Templates
Massive amount of work to improve the test suite, restores doctests....
Massive amount of work to improve the test suite, restores doctests. After Brian's comments, I realized that our test machinery was NOT in reality running all the ipython-syntax doctests we have. This is now fixed. The test suite isn't completely passing, but this commit is for the underlying machinery. I will now work on fixing as many broken tests as I can. Fixes https://bugs.launchpad.net/ipython/+bug/505071

File last commit:

r1033:fea50de7
r2414:7fce7ae8
Show More
test_ipapi.py
54 lines | 978 B | text/x-python | PythonLexer
import sys
sys.path.append('..')
import IPython.ipapi
IPython.ipapi.make_session()
ip = IPython.ipapi.get()
def test_runlines():
import textwrap
ip.runlines(['a = 10', 'a+=1'])
ip.runlines('assert a == 11\nassert 1')
assert ip.user_ns['a'] == 11
complex = textwrap.dedent("""\
if 1:
print "hello"
if 1:
print "world"
if 1:
print "foo"
if 1:
print "bar"
if 1:
print "bar"
""")
ip.runlines(complex)
def test_db():
ip.db['__unittest_'] = 12
assert ip.db['__unittest_'] == 12
del ip.db['__unittest_']
assert '__unittest_' not in ip.db
def test_defalias():
slot = [None]
# test callable alias
def cb(localip,s):
assert localip is ip
slot[0] = s
ip.defalias('testalias', cb)
ip.runlines('testalias foo bar')
assert slot[0] == 'testalias foo bar'
test_runlines()
test_db()
test_defalias