##// END OF EJS Templates
Merge pull request #13314 from Kojoley/refactor-doctest-skipping-implementation...
Merge pull request #13314 from Kojoley/refactor-doctest-skipping-implementation Refactor doctest skipping implementation

File last commit:

r25296:0aac4eca
r27124:a8ca8395 merge
Show More
test_autocall.py
66 lines | 1.4 KiB | text/x-python | PythonLexer
Fernando Perez
Moved unused autocall tests into a doctest that does get run now.
r2653 """These kinds of tests are less than ideal, but at least they run.
This was an old test that was being run interactively in the top-level tests/
directory, which we are removing. For now putting this here ensures at least
we do run the test, though ultimately this functionality should all be tested
with better-isolated tests that don't rely on the global instance in iptest.
"""
chillaranand
Fixed #10322 - Made autocall to ignore raw & string literals
r23493 from IPython.core.splitinput import LineInfo
from IPython.core.prefilter import AutocallChecker
Fernando Perez
Moved unused autocall tests into a doctest that does get run now.
r2653
def doctest_autocall():
"""
In [1]: def f1(a,b,c):
...: return a+b+c
chillaranand
Fixed #10322 - Made autocall to ignore raw & string literals
r23493 ...:
Fernando Perez
Moved unused autocall tests into a doctest that does get run now.
r2653
In [2]: def f2(a):
...: return a + a
chillaranand
Fixed #10322 - Made autocall to ignore raw & string literals
r23493 ...:
Fernando Perez
Moved unused autocall tests into a doctest that does get run now.
r2653
chillaranand
Fixed #10322 - Made autocall to ignore raw & string literals
r23493 In [3]: def r(x):
...: return True
...:
Fernando Perez
Moved unused autocall tests into a doctest that does get run now.
r2653
chillaranand
Fixed #10322 - Made autocall to ignore raw & string literals
r23493 In [4]: ;f2 a b c
Out[4]: 'a b ca b c'
Fernando Perez
Moved unused autocall tests into a doctest that does get run now.
r2653
chillaranand
Fixed #10322 - Made autocall to ignore raw & string literals
r23493 In [5]: assert _ == "a b ca b c"
Fernando Perez
Moved unused autocall tests into a doctest that does get run now.
r2653
chillaranand
Fixed #10322 - Made autocall to ignore raw & string literals
r23493 In [6]: ,f1 a b c
Out[6]: 'abc'
Fernando Perez
Moved unused autocall tests into a doctest that does get run now.
r2653
chillaranand
Fixed #10322 - Made autocall to ignore raw & string literals
r23493 In [7]: assert _ == 'abc'
Matthias Bussonnier
remove some py3compat usage
r24265 In [8]: print(_)
Fernando Perez
Moved unused autocall tests into a doctest that does get run now.
r2653 abc
chillaranand
Fixed #10322 - Made autocall to ignore raw & string literals
r23493 In [9]: /f1 1,2,3
Out[9]: 6
In [10]: assert _ == 6
Fernando Perez
Moved unused autocall tests into a doctest that does get run now.
r2653
chillaranand
Fixed #10322 - Made autocall to ignore raw & string literals
r23493 In [11]: /f2 4
Out[11]: 8
Fernando Perez
Moved unused autocall tests into a doctest that does get run now.
r2653
chillaranand
Fixed #10322 - Made autocall to ignore raw & string literals
r23493 In [12]: assert _ == 8
Fernando Perez
Moved unused autocall tests into a doctest that does get run now.
r2653
chillaranand
Fixed #10322 - Made autocall to ignore raw & string literals
r23493 In [12]: del f1, f2
Fernando Perez
Moved unused autocall tests into a doctest that does get run now.
r2653
chillaranand
Fixed #10322 - Made autocall to ignore raw & string literals
r23493 In [13]: ,r a
Out[13]: True
In [14]: assert _ == True
In [15]: r'a'
Out[15]: 'a'
In [16]: assert _ == 'a'
Fernando Perez
Moved unused autocall tests into a doctest that does get run now.
r2653 """
chillaranand
Fixed #10322 - Made autocall to ignore raw & string literals
r23493
def test_autocall_should_ignore_raw_strings():
line_info = LineInfo("r'a'")
pm = ip.prefilter_manager
ac = AutocallChecker(shell=pm.shell, prefilter_manager=pm, config=pm.config)
assert ac.check(line_info) is None