summaryrefslogtreecommitdiff
path: root/Lib/unittest/case.py
diff options
context:
space:
mode:
authorAntoine Pitrou <solipsis@pitrou.net>2014-04-29 01:23:50 +0200
committerAntoine Pitrou <solipsis@pitrou.net>2014-04-29 01:23:50 +0200
commit9681022f1ee5c6c9160c515b24d2a3d1efe8b90d (patch)
treec1d1cfd55d9b22733b4655b31324a3c33d136de8 /Lib/unittest/case.py
parent871dfc41d37b02a7af6eb03028edc6702f24fd1d (diff)
downloadcpython-git-9681022f1ee5c6c9160c515b24d2a3d1efe8b90d.tar.gz
Issue #9815: assertRaises now tries to clear references to local variables in the exception's traceback.
Diffstat (limited to 'Lib/unittest/case.py')
-rw-r--r--Lib/unittest/case.py3
1 files changed, 3 insertions, 0 deletions
diff --git a/Lib/unittest/case.py b/Lib/unittest/case.py
index bedbc670d2..aa00b7accf 100644
--- a/Lib/unittest/case.py
+++ b/Lib/unittest/case.py
@@ -9,6 +9,7 @@ import re
import warnings
import collections
import contextlib
+import traceback
from . import result
from .util import (strclass, safe_repr, _count_diff_all_purpose,
@@ -178,6 +179,8 @@ class _AssertRaisesContext(_AssertRaisesBaseContext):
self.obj_name))
else:
self._raiseFailure("{} not raised".format(exc_name))
+ else:
+ traceback.clear_frames(tb)
if not issubclass(exc_type, self.expected):
# let unexpected exceptions pass through
return False