.. function:: print_exc(limit=None, file=None, chain=True)
- This is a shorthand for ``print_exception(sys.exception(), limit, file,
- chain)``.
+ This is a shorthand for ``print_exception(sys.exception(), limit=limit, file=file,
+ chain=chain)``.
.. function:: print_last(limit=None, file=None, chain=True)
- This is a shorthand for ``print_exception(sys.last_exc, limit, file,
- chain)``. In general it will work only after an exception has reached
+ This is a shorthand for ``print_exception(sys.last_exc, limit=limit, file=file,
+ chain=chain)``. In general it will work only after an exception has reached
an interactive prompt (see :data:`sys.last_exc`).
traceback.print_exception(Exception("projector"), file=output)
self.assertEqual(output.getvalue(), "Exception: projector\n")
+ def test_print_last(self):
+ self.assertIsNone(getattr(sys, "last_exc", None))
+ sys.last_exc = ValueError(42)
+ output = StringIO()
+ traceback.print_last(file=output)
+ self.assertEqual(output.getvalue(), "ValueError: 42\n")
+
def test_format_exception_exc(self):
e = Exception("projector")
output = traceback.format_exception(e)
# --
def print_exc(limit=None, file=None, chain=True):
- """Shorthand for 'print_exception(sys.exception(), limit, file, chain)'."""
+ """Shorthand for 'print_exception(sys.exception(), limit=limit, file=file, chain=chain)'."""
print_exception(sys.exception(), limit=limit, file=file, chain=chain)
def format_exc(limit=None, chain=True):
return "".join(format_exception(sys.exception(), limit=limit, chain=chain))
def print_last(limit=None, file=None, chain=True):
- """This is a shorthand for 'print_exception(sys.last_exc, limit, file, chain)'."""
+ """This is a shorthand for 'print_exception(sys.last_exc, limit=limit, file=file, chain=chain)'."""
if not hasattr(sys, "last_exc") and not hasattr(sys, "last_type"):
raise ValueError("no last exception")
if hasattr(sys, "last_exc"):
- print_exception(sys.last_exc, limit, file, chain)
+ print_exception(sys.last_exc, limit=limit, file=file, chain=chain)
else:
print_exception(sys.last_type, sys.last_value, sys.last_traceback,
- limit, file, chain)
+ limit=limit, file=file, chain=chain)
#