##// END OF EJS Templates
Merge pull request #1495 from rkern/fix-hyperobject-pprint...
Merge pull request #1495 from rkern/fix-hyperobject-pprint BUG: Fix pretty-printing for overzealous objects Some classes use __getattr__ to automatically create requested attributes. The recent trend of LINQ-like query objects is what I ran into. This confuses the pretty-printing machinery that tests for _repr_pretty_. This pull request fixes many of these problems by simply testing if the _repr_pretty_ attribute is callable. This may still be confused by certain mocking frameworks, but it's a good start.

File last commit:

r5529:a1b74bc4
r6272:873e3647 merge
Show More
skipdoctest.py
38 lines | 1.4 KiB | text/x-python | PythonLexer
Fernando Perez
Small cleanups and documentation to testing support code....
r5529 """Decorators marks that a doctest should be skipped, for both python 2 and 3.
Thomas Kluyver
Move skip_doctest decorator to separate module, so that it can be used without triggering other imports.
r3886
The IPython.testing.decorators module triggers various extra imports, including
numpy and sympy if they're present. Since this decorator is used in core parts
of IPython, it's in a separate module so that running IPython doesn't trigger
those imports."""
Fernando Perez
Small cleanups and documentation to testing support code....
r5529
#-----------------------------------------------------------------------------
# Copyright (C) 2009-2011 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
#-----------------------------------------------------------------------------
Thomas Kluyver
Add decorators to mark known failures on Python 3.
r5204 import sys
Thomas Kluyver
Move skip_doctest decorator to separate module, so that it can be used without triggering other imports.
r3886
Fernando Perez
Small cleanups and documentation to testing support code....
r5529 #-----------------------------------------------------------------------------
# Decorators
#-----------------------------------------------------------------------------
Thomas Kluyver
Move skip_doctest decorator to separate module, so that it can be used without triggering other imports.
r3886 def skip_doctest(f):
"""Decorator - mark a function or method for skipping its doctest.
This decorator allows you to mark a function whose docstring you wish to
omit from testing, while preserving the docstring for introspection, help,
etc."""
f.skip_doctest = True
return f
Thomas Kluyver
Add decorators to mark known failures on Python 3.
r5204
Fernando Perez
Small cleanups and documentation to testing support code....
r5529
Thomas Kluyver
Add decorators to mark known failures on Python 3.
r5204 def skip_doctest_py3(f):
"""Decorator - skip the doctest under Python 3."""
f.skip_doctest = (sys.version_info[0] >= 3)
return f