[Scons/Test] Allow test suite to continue if gtest crashes
If a gtest program crashes, register that as a single test failure. Previously, the entire test suite would be aborted because the attempt to open the test results file (gtest-foo.xml) would fail.
This commit is contained in:
parent
c5eb2f57dd
commit
30bf2c806f
1 changed files with 13 additions and 9 deletions
|
|
@ -42,16 +42,20 @@ def addTestProgram(subdir, progName, env_vars={}):
|
|||
if not code:
|
||||
# Test was successful
|
||||
open(passedFile.path, 'w').write(time.asctime()+'\n')
|
||||
else:
|
||||
testResults.failed[passedFile.name] = program
|
||||
|
||||
results = ElementTree.parse(resultsFile)
|
||||
for test in results.findall('.//testcase'):
|
||||
testName = ': '.join((progName, test.get('name')))
|
||||
if test.findall('failure'):
|
||||
testResults.failed[testName] = 1
|
||||
else:
|
||||
testResults.passed[testName] = 1
|
||||
if os.path.exists(resultsFile):
|
||||
# Determine individual test status
|
||||
results = ElementTree.parse(resultsFile)
|
||||
for test in results.findall('.//testcase'):
|
||||
testName = ': '.join((progName, test.get('name')))
|
||||
if test.findall('failure'):
|
||||
testResults.failed[testName] = 1
|
||||
else:
|
||||
testResults.passed[testName] = 1
|
||||
else:
|
||||
# Total failure of the test program - unable to determine status
|
||||
# of individual tests
|
||||
testResults.failed[passedFile.name] = program
|
||||
|
||||
testenv = localenv.Clone()
|
||||
testenv['ENV'].update(env_vars)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue