[pypy-svn] r18588 - pypy/dist/lib-python
ale at codespeak.net
ale at codespeak.net
Fri Oct 14 19:35:25 CEST 2005
Author: ale
Date: Fri Oct 14 19:35:24 2005
New Revision: 18588
Modified:
pypy/dist/lib-python/conftest.py
Log:
Added option to run the compliancy tests with a compiled pypy-c living in pypy/bin/
TODO :
be better at reporting segfaults
better reporting of version of compiled pypy
Preliminary results:
Some tests still take a lot of time (test_long, test_marshal ....)
A lot of tests fails because of some mismatch between IOError (expected by test_support) and OSError (raised by lib/_file)
Modified: pypy/dist/lib-python/conftest.py
==============================================================================
--- pypy/dist/lib-python/conftest.py (original)
+++ pypy/dist/lib-python/conftest.py Fri Oct 14 19:35:24 2005
@@ -35,6 +35,9 @@
Option = py.test.Config.Option
option = py.test.Config.addoptions("compliance testing options",
+ Option('-C', '--compiled', action="store_true",
+ default=False, dest="use_compiled",
+ help="use a compiled version of pypy, expected in pypy/bin/pypy-c"),
Option('-E', '--extracttests', action="store_true",
default=False, dest="extracttests",
help="try to extract single tests and run them via py.test/PyPy"),
@@ -889,7 +892,14 @@
regrrun_verbosity = regrtest.getoutputpath() and '0' or '1'
TIMEOUT = gettimeout()
- cmd = "%s %s %d %s %s %s %s %s" %(
+ if option.use_compiled:
+ python = pypydir.join('bin', 'pypy-c')
+ cmd = "%s %s %s %s" %(
+ python,
+ regrrun, regrrun_verbosity, fspath.purebasename)
+ print cmd
+ else:
+ cmd = "%s %s %d %s %s %s %s %s" %(
python, alarm_script, TIMEOUT,
pypy_script, sopt,
regrrun, regrrun_verbosity, fspath.purebasename)
@@ -952,9 +962,13 @@
cmd = self.getinvocation(regrtest)
result = Result()
fspath = regrtest.getfspath()
- result['fspath'] = str(fspath)
+ result['fspath'] = str(fspath)
+ if option.use_compiled:
+ #Please fix this, breaks the report table
+ result['pypy-revision'] = '%s compiled' % getrev(pypydir)
+ else:
+ result['pypy-revision'] = getrev(pypydir)
result['options'] = regrtest.getoptions()
- result['pypy-revision'] = getrev(pypydir)
result['timeout'] = gettimeout()
result['startdate'] = time.ctime()
starttime = time.time()
@@ -980,6 +994,9 @@
res, out, err = callcapture(reportdiff, expected, test_stdout)
outcome = 'ERROUT'
result.addnamedtext('reportdiff', out)
+ else:
+ if 'FAIL' in test_stdout or 'ERROR' in test_stderr:
+ outcome = 'FAIL'
elif timedout:
outcome = "T/O"
else:
More information about the Pypy-commit
mailing list