##// END OF EJS Templates
Set calling program to the empty string, when argv not in sys...
Set calling program to the empty string, when argv not in sys It might happen, then the sys module has no argv, when embeding IPython into other programs with IPython.embed(). In that case, just set the calling program to "" or other logic in IPython will crash - for instance when checking for command line arguments.

File last commit:

r5390:c82649ea
r11103:df671dbb
Show More
test_frontendbase.py
32 lines | 1002 B | text/x-python | PythonLexer
# encoding: utf-8
"""
Test the basic functionality of frontendbase.
"""
__docformat__ = "restructuredtext en"
#-------------------------------------------------------------------------------
# Copyright (C) 2008-2011 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()