##// END OF EJS Templates
Provide and easier way to generate magics and pre-post hooks...
Provide and easier way to generate magics and pre-post hooks This introduce a code base way of modifying the ast. This allow to use Template strings with the two special variable names names `__code__` and `__ret__` allowing to quickly write a magic, or hooks that modify the ast. This also introduce a `%code_wrap` cell magic to on the fly wrap code. It is this easy to for example modify IPython to say time each block of code, or retry them, or wrap them in try/except and analyse the error message, profile... Note that this is not new, but simply convenience function and utilities, especially around hygiene.

File last commit:

r27158:d0c404da
r28323:548406db
Show More
simple.py
44 lines | 727 B | text/x-python | PythonLexer
Fernando Perez
Little test file for plugin
r1524 """Simple example using doctests.
This file just contains doctests both using plain python and IPython prompts.
Nikita Kniazev
Make the ipyfunc doctest actually test IPython syntax
r27158 All tests should be loaded by Pytest.
Fernando Perez
Little test file for plugin
r1524 """
def pyfunc():
"""Some pure python tests...
>>> pyfunc()
'pyfunc'
>>> import os
>>> 2+3
5
>>> for i in range(3):
Thomas Kluyver
Fix doctests in IPython.testing
r13393 ... print(i, end=' ')
... print(i+1, end=' ')
Fernando Perez
Little test file for plugin
r1524 ...
Thomas Kluyver
Fix doctests in IPython.testing
r13393 0 1 1 2 2 3
Fernando Perez
Little test file for plugin
r1524 """
return 'pyfunc'
Nikita Kniazev
Make the ipyfunc doctest actually test IPython syntax
r27158 def ipyfunc():
"""Some IPython tests...
In [1]: ipyfunc()
Out[1]: 'ipyfunc'
In [2]: import os
In [3]: 2+3
Out[3]: 5
Fernando Perez
Little test file for plugin
r1524
Nikita Kniazev
Make the ipyfunc doctest actually test IPython syntax
r27158 In [4]: for i in range(3):
...: print(i, end=' ')
...: print(i+1, end=' ')
...:
Out[4]: 0 1 1 2 2 3
Fernando Perez
Little test file for plugin
r1524 """
Nikita Kniazev
Make the ipyfunc doctest actually test IPython syntax
r27158 return "ipyfunc"