mirror of
https://github.com/python/cpython.git
synced 2025-12-08 06:10:17 +00:00
gh-136914: Fix support of cached functions and properties in DocTest's lineno computation (GH-136930)
Previously, DocTest's lineno of functions and methods decorated with
functools.cache(), functools.lru_cache() and functools.cached_property()
was not properly returned (None was returned) because the
computation relied on inspect.isfunction() which does not consider the
decorated result as a function.
We now use the more generic inspect.isroutine(), as elsewhere
in doctest's logic.
Also, added a special case for functools.cached_property().
(cherry picked from commit
|
||
|---|---|---|
| .. | ||
| __init__.py | ||
| decorator_mod.py | ||
| doctest_aliases.py | ||
| doctest_lineno.py | ||
| sample_doctest.py | ||
| sample_doctest_errors.py | ||
| sample_doctest_no_docstrings.py | ||
| sample_doctest_no_doctests.py | ||
| sample_doctest_skip.py | ||
| test_doctest.py | ||
| test_doctest.txt | ||
| test_doctest2.py | ||
| test_doctest2.txt | ||
| test_doctest3.txt | ||
| test_doctest4.txt | ||
| test_doctest_errors.txt | ||
| test_doctest_skip.txt | ||
| test_doctest_skip2.txt | ||