MultiTestRunner.py improvements.

- Tweak output directories for temp files, derive the temporary base from the
   test's parent directory name, and the test name (instead of the whole path).

llvm-svn: 77059
This commit is contained in:
Daniel Dunbar 2009-07-25 09:53:43 +00:00
parent e6475f1192
commit 3c2da2bb7e
2 changed files with 14 additions and 8 deletions

View File

@ -155,11 +155,10 @@ class Tester(threading.Thread):
def runTest(self, (path,index)):
command = path
# Use hand concatentation here because we want to override
# absolute paths.
output = 'Output/' + path + '.out'
base = TestRunner.getTestOutputBase('Output', path)
output = base + '.out'
testname = path
testresults = 'Output/' + path + '.testresults'
testresults = base + '.testresults'
TestRunner.mkdir_p(os.path.dirname(testresults))
numTests = len(self.provider.tests)
digits = len(str(numTests))

View File

@ -16,7 +16,6 @@
#
import errno
import hashlib
import os
import platform
import re
@ -286,6 +285,16 @@ def inferClangCC(clang):
return clangcc
def getTestOutputBase(dir, testpath):
"""getTestOutputPath(dir, testpath) - Get the full path for temporary files
corresponding to the given test path."""
# Form the output base out of the test parent directory name and the test
# name. FIXME: Find a better way to organize test results.
return os.path.join(dir,
os.path.basename(os.path.dirname(testpath)),
os.path.basename(testpath))
def main():
global options
from optparse import OptionParser
@ -314,9 +323,7 @@ def main():
for path in args:
command = path
# Use hand concatentation here because we want to override
# absolute paths.
output = 'Output/' + path + '.out'
output = getTestOutputPath('Output', path) + '.out'
testname = path
res = runOneTest(path, command, output, testname,