[pypy-svn] r58836 - pypy/branch/2.5-merge/lib-python

pedronis at codespeak.net pedronis at codespeak.net
Wed Oct 8 17:06:19 CEST 2008


Author: pedronis
Date: Wed Oct  8 17:06:19 2008
New Revision: 58836

Modified:
   pypy/branch/2.5-merge/lib-python/conftest.py
Log:
support the keyword skip on RegrTests to skip all tests at the conftest level,

skip=True => "obsolete or unsupported platform" as skip message
other true skip value => used directly as the skip message



Modified: pypy/branch/2.5-merge/lib-python/conftest.py
==============================================================================
--- pypy/branch/2.5-merge/lib-python/conftest.py	(original)
+++ pypy/branch/2.5-merge/lib-python/conftest.py	Wed Oct  8 17:06:19 2008
@@ -58,13 +58,15 @@
     def __init__(self, basename, enabled=False, dumbtest=False,
                                  core=False,
                                  compiler=None, 
-                                 usemodules = ''): 
+                                 usemodules = '',
+                                 skip=None): 
         self.basename = basename 
         self.enabled = enabled 
         self.dumbtest = dumbtest 
         self._usemodules = usemodules.split()
         self._compiler = compiler 
         self.core = core
+        self.skip = skip
         assert self.getfspath().check(), "%r not found!" % (basename,)
 
     def usemodules(self):
@@ -122,7 +124,7 @@
     RegrTest('test___future__.py', enabled=True, dumbtest=1, core=True),
     RegrTest('test__locale.py', enabled=True),
     RegrTest('test_aepack.py', enabled=False),
-    RegrTest('test_al.py', enabled=False, dumbtest=1),
+    RegrTest('test_al.py', enabled=False, dumbtest=1, skip=True),
     RegrTest('test_anydbm.py', enabled=True),
     RegrTest('test_applesingle.py', enabled=False),
     RegrTest('test_array.py', enabled=True, core=True, usemodules='struct'),
@@ -658,6 +660,12 @@
             i am afraid. 
         """ 
         regrtest = self.parent.regrtest
+        if regrtest.skip:
+            if regrtest.skip is True:
+                msg = "obsolete or unsupported platform"
+            else:
+                msg = regrtest.skip
+            py.test.skip(msg)
         exit_status, test_stdout, test_stderr = self.getresult(regrtest) 
         if exit_status:
             raise self.ExternalFailure(test_stdout, test_stderr)



More information about the Pypy-commit mailing list