diff options
author | Victor Stinner <vstinner@redhat.com> | 2019-05-24 22:09:38 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-05-24 22:09:38 (GMT) |
commit | 6dbbe748e101a173b4cff8aada41e9313e287e0f (patch) | |
tree | b0361e58e666c57fd742d44b30c5bf72e98c090b /Lib/test/support | |
parent | a9f05d69ccbf3c75cdd604c25094282697789a62 (diff) | |
download | cpython-6dbbe748e101a173b4cff8aada41e9313e287e0f.zip cpython-6dbbe748e101a173b4cff8aada41e9313e287e0f.tar.gz cpython-6dbbe748e101a173b4cff8aada41e9313e287e0f.tar.bz2 |
bpo-36829: Document test.support.catch_unraisable_exception() (GH-13554)
catch_unraisable_exception() now also removes its 'unraisable'
attribute at the context manager exit.
Diffstat (limited to 'Lib/test/support')
-rw-r--r-- | Lib/test/support/__init__.py | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/Lib/test/support/__init__.py b/Lib/test/support/__init__.py index 2fe9d9d..d6ed221 100644 --- a/Lib/test/support/__init__.py +++ b/Lib/test/support/__init__.py @@ -3043,12 +3043,14 @@ class catch_unraisable_exception: Usage: with support.catch_unraisable_exception() as cm: + # code creating an "unraisable exception" ... - # check the expected unraisable exception: use cm.unraisable + # check the unraisable exception: use cm.unraisable ... - # cm.unraisable is None here (to break a reference cycle) + # cm.unraisable attribute no longer exists at this point + # (to break a reference cycle) """ def __init__(self): @@ -3065,5 +3067,5 @@ class catch_unraisable_exception: def __exit__(self, *exc_info): # Clear the unraisable exception to explicitly break a reference cycle - self.unraisable = None + del self.unraisable sys.unraisablehook = self._old_hook |