summaryrefslogtreecommitdiffstats
path: root/Lib/test/regrtest.py
diff options
context:
space:
mode:
authorFred Drake <fdrake@acm.org>2003-02-03 15:19:30 (GMT)
committerFred Drake <fdrake@acm.org>2003-02-03 15:19:30 (GMT)
commit9a0db07c2ffd4e4b3ae75d5820dc6b4152b3582b (patch)
treecdf94497d1ebdd3e08812ebbecb5533223a58bab /Lib/test/regrtest.py
parent13b291021f0f9741423e41b94f04f931a442054c (diff)
downloadcpython-9a0db07c2ffd4e4b3ae75d5820dc6b4152b3582b.zip
cpython-9a0db07c2ffd4e4b3ae75d5820dc6b4152b3582b.tar.gz
cpython-9a0db07c2ffd4e4b3ae75d5820dc6b4152b3582b.tar.bz2
test_support.requires(): Instead of raising TestSkipped, raise a new
exception, ResourceDenied. This is used to distinguish between tests that are skipped for other reasons (platform support, missing data, etc.) from those that are skipped because a "resource" has not been enabled. This prevents those tests from being reported as unexpected skips for the platform; those should only be considered unexpected skips if the resource were enabled.
Diffstat (limited to 'Lib/test/regrtest.py')
-rwxr-xr-xLib/test/regrtest.py10
1 files changed, 9 insertions, 1 deletions
diff --git a/Lib/test/regrtest.py b/Lib/test/regrtest.py
index 8e3a122..cc33439 100755
--- a/Lib/test/regrtest.py
+++ b/Lib/test/regrtest.py
@@ -196,6 +196,7 @@ def main(tests=None, testdir=None, verbose=0, quiet=0, generate=0,
good = []
bad = []
skipped = []
+ resource_denieds = []
if findleaks:
try:
@@ -263,6 +264,8 @@ def main(tests=None, testdir=None, verbose=0, quiet=0, generate=0,
bad.append(test)
else:
skipped.append(test)
+ if ok == -2:
+ resource_denieds.append(test)
if findleaks:
gc.collect()
if gc.garbage:
@@ -299,7 +302,7 @@ def main(tests=None, testdir=None, verbose=0, quiet=0, generate=0,
e = _ExpectedSkips()
plat = sys.platform
if e.isvalid():
- surprise = Set(skipped) - e.getexpected()
+ surprise = Set(skipped) - e.getexpected() - Set(resource_denieds)
if surprise:
print count(len(surprise), "skip"), \
"unexpected on", plat + ":"
@@ -395,6 +398,11 @@ def runtest(test, generate, verbose, quiet, testdir = None):
indirect_test()
finally:
sys.stdout = save_stdout
+ except test_support.ResourceDenied, msg:
+ if not quiet:
+ print test, "skipped --", msg
+ sys.stdout.flush()
+ return -2
except (ImportError, test_support.TestSkipped), msg:
if not quiet:
print test, "skipped --", msg