##// END OF EJS Templates
More tests of the frontend. Improve the ease of testing.
More tests of the frontend. Improve the ease of testing.

File last commit:

r1455:fdbdf21c
r1458:4eaf1646
Show More
sync_traceback_trap.py
45 lines | 1.4 KiB | text/x-python | PythonLexer
/ IPython / kernel / core / sync_traceback_trap.py
Gael Varoquaux
Better traceback support.
r1439 # encoding: utf-8
"""Object to manage sys.excepthook().
Synchronous version: prints errors when called.
"""
__docformat__ = "restructuredtext en"
#-------------------------------------------------------------------------------
# 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.
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# Imports
#-------------------------------------------------------------------------------
from traceback_trap import TracebackTrap
from IPython.ultraTB import ColorTB
class SyncTracebackTrap(TracebackTrap):
gvaroquaux
Clean up code, names, and docstrings.
r1455 def __init__(self, sync_formatter=None, formatters=None,
raiseException=True):
Gael Varoquaux
Better traceback support.
r1439 TracebackTrap.__init__(self, formatters=formatters)
if sync_formatter is None:
sync_formatter = ColorTB(color_scheme='LightBG')
self.sync_formatter = sync_formatter
gvaroquaux
Clean up code, names, and docstrings.
r1455 self.raiseException = raiseException
Gael Varoquaux
Better traceback support.
r1439
def hook(self, *args):
""" This method actually implements the hook.
"""
self.args = args
gvaroquaux
Clean up code, names, and docstrings.
r1455 if not self.raiseException:
print self.sync_formatter(*self.args)
else:
raise
Gael Varoquaux
Better traceback support.
r1439