This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author Claudiu.Popa
Recipients Claudiu.Popa, ezio.melotti, gvanrossum, michael.foord, pitrou, r.david.murray, rhettinger, tim.peters
Date 2014-06-20.08:08:56
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1403251736.85.0.197645191383.issue21740@psf.upfronthosting.co.za>
In-reply-to
Content
How about using this?

diff -r 1e74350dd056 Lib/doctest.py
--- a/Lib/doctest.py    Tue Jun 17 22:27:46 2014 -0500
+++ b/Lib/doctest.py    Fri Jun 20 11:08:00 2014 +0300
@@ -984,7 +984,8 @@
             for valname, val in obj.__dict__.items():
                 valname = '%s.%s' % (name, valname)
                 # Recurse to functions & classes.
-                if ((inspect.isroutine(val) or inspect.isclass(val)) and
+
+                if ((inspect.isroutine(inspect.unwrap(val)) or inspect.isclass(val)) and
                     self._from_module(module, val)):
                     self._find(tests, val, valname, module, source_lines,
                                globs, seen)

This seems to work for the given example and if the decorator uses update_wrapper or @wraps.
History
Date User Action Args
2014-06-20 08:08:56Claudiu.Popasetrecipients: + Claudiu.Popa, gvanrossum, tim.peters, rhettinger, pitrou, ezio.melotti, r.david.murray, michael.foord
2014-06-20 08:08:56Claudiu.Popasetmessageid: <1403251736.85.0.197645191383.issue21740@psf.upfronthosting.co.za>
2014-06-20 08:08:56Claudiu.Popalinkissue21740 messages
2014-06-20 08:08:56Claudiu.Popacreate