summaryrefslogtreecommitdiff
path: root/Lib/test/test_metaclass.py
diff options
context:
space:
mode:
authorBrett Cannon <bcannon@gmail.com>2011-02-22 03:04:06 +0000
committerBrett Cannon <bcannon@gmail.com>2011-02-22 03:04:06 +0000
commit7a54073a566080f3d7c10871f6ce244c9fc1221b (patch)
treec477930f8c868d6bdf9b8e65e7293bc2fdfe21ae /Lib/test/test_metaclass.py
parenteb70e47d85d52e0bafc6b6350b9b627e0b577e96 (diff)
downloadcpython-git-7a54073a566080f3d7c10871f6ce244c9fc1221b.tar.gz
Issue #10992: make tests pass when run under coverage.
Various tests fail when run under coverage. A primary culprit is refcount tests which fail as the counts are thrown off by the coverage code. A new decorator -- test.support.refcount_test -- is used to decorate tests which test refcounts and to skip them when running under coverage. Other tests simply fail because of changes in the system (e.g., __local__ suddenly appearing). Thanks to Kristian Vlaardingerbroek for helping to diagnose the test failures.
Diffstat (limited to 'Lib/test/test_metaclass.py')
-rw-r--r--Lib/test/test_metaclass.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/Lib/test/test_metaclass.py b/Lib/test/test_metaclass.py
index 219ab99840..6862900b01 100644
--- a/Lib/test/test_metaclass.py
+++ b/Lib/test/test_metaclass.py
@@ -246,7 +246,13 @@ Test failures in looking up the __prepare__ method work.
"""
-__test__ = {'doctests' : doctests}
+import sys
+
+# Trace function introduces __locals__ which causes various tests to fail.
+if hasattr(sys, 'gettrace') and sys.gettrace():
+ __test__ = {}
+else:
+ __test__ = {'doctests' : doctests}
def test_main(verbose=False):
from test import support