test_completer.py
36 lines
| 773 B
| text/x-python
|
PythonLexer
/ test / test_completer.py
ville
|
r988 | """ | |
comp | |||
""" | |||
# The prefilter always ends in a call to some self.handle_X method. We swap | |||
# all of those out so that we can capture which one was called. | |||
import sys | |||
sys.path.append('..') | |||
import IPython | |||
import IPython.ipapi | |||
IPython.Shell.start() | |||
ip = IPython.ipapi.get() | |||
completer = ip.IP.Completer | |||
print completer | |||
def do_test(text, line): | |||
def get_endix(): | |||
idx = len(line) | |||
print "Call endidx =>",idx | |||
return idx | |||
def get_line_buffer(): | |||
print "Lbuf =>",line | |||
return line | |||
completer.get_line_buffer = get_line_buffer | |||
completer.get_endidx = get_endix | |||
l = completer.all_completions(text) | |||
return l | |||
l = do_test ('p', 'print p') | |||
assert 'pow' in l | |||
l = do_test ('p', 'import p') | |||
assert 'pprint' in l |