[issue17534] unittest keeps references to test cases alive
Ezio Melotti
report at bugs.python.org
Sat Mar 23 23:06:48 CET 2013
New submission from Ezio Melotti:
After the subtests commit (5c09e1c57200/#16997), test_queue started showing the following warning:
Warning -- threading._dangling was modified by test_queue
1 test altered the execution environment:
test_queue
The warning was caused by the fact that the TestCase subclasses in test_queue kept references to the thread, but before 5c09e1c57200 these subclasses (and hence the references to the thread) were destroyed before the regrtest check for threading._dangling, whereas now they are kept alive (due to Lib/unittest/case.py:72, that adds a reference to the TestCase even in case of success). I now fixed the warning in test_queue (1747e50fca55), however unittest should probably avoid keeping alive TestCases when they are not needed anymore.
See also #9815.
(Thanks to Antoine for the help while I was debugging the issue.)
----------
components: Library (Lib)
messages: 185100
nosy: ezio.melotti, michael.foord, pitrou
priority: normal
severity: normal
stage: needs patch
status: open
title: unittest keeps references to test cases alive
type: behavior
versions: Python 2.7, Python 3.2, Python 3.3, Python 3.4
_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue17534>
_______________________________________
More information about the Python-bugs-list
mailing list