##// END OF EJS Templates
Fix bugs in x=!cmd; we can't use pexpect at all....
Fix bugs in x=!cmd; we can't use pexpect at all. pexpect makes the subprocesses format their output for a terminal, with a mix of spaces, tabs and newlines. This makes it virtually impossible to then capture their output and do anything useful with it. Fixed a few other small bugs and inconsistencies in process handling.

File last commit:

r2661:595fc3b9
r3002:c3bafd12
Show More
test_frontendbase.py
32 lines | 999 B | text/x-python | PythonLexer
Barry Wark
moved frontend from ipython1-dev. Got engineservice.ThreadedEngineService running, but does nto correctly propagate errors during execute()
r1263 # encoding: utf-8
Gael Varoquaux
Replace all use of the ast module with the codeop module, and all use of...
r1710 """
Test the basic functionality of frontendbase.
"""
Barry Wark
moved frontend from ipython1-dev. Got engineservice.ThreadedEngineService running, but does nto correctly propagate errors during execute()
r1263
__docformat__ = "restructuredtext en"
Gael Varoquaux
Replace all use of the ast module with the codeop module, and all use of...
r1710 #-------------------------------------------------------------------------------
# Copyright (C) 2008 The IPython Development Team
#
# Distributed under the terms of the BSD License. The full license is
# in the file COPYING, distributed as part of this software.
#-------------------------------------------------------------------------------
from IPython.frontend.frontendbase import FrontEndBase
def test_iscomplete():
""" Check that is_complete works.
"""
f = FrontEndBase()
assert f.is_complete('(a + a)')
assert not f.is_complete('(a + a')
assert f.is_complete('1')
assert not f.is_complete('1 + ')
assert not f.is_complete('1 + \n\n')
assert f.is_complete('if True:\n print 1\n')
assert not f.is_complete('if True:\n print 1')
assert f.is_complete('def f():\n print 1\n')
if __name__ == '__main__':
test_iscomplete()
Barry Wark
moved frontend from ipython1-dev. Got engineservice.ThreadedEngineService running, but does nto correctly propagate errors during execute()
r1263