mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-25 04:02:41 +01:00
[sanitizer] Use COMPILER_RT_EMULATOR with gtests
Differential Revision: https://reviews.llvm.org/D100998
This commit is contained in:
parent
dcdc354ce1
commit
cd55b6be92
@ -11,7 +11,7 @@ from .base import TestFormat
|
||||
kIsWindows = sys.platform in ['win32', 'cygwin']
|
||||
|
||||
class GoogleTest(TestFormat):
|
||||
def __init__(self, test_sub_dirs, test_suffix):
|
||||
def __init__(self, test_sub_dirs, test_suffix, run_under = []):
|
||||
self.test_sub_dirs = str(test_sub_dirs).split(';')
|
||||
|
||||
# On Windows, assume tests will also end in '.exe'.
|
||||
@ -21,6 +21,7 @@ class GoogleTest(TestFormat):
|
||||
|
||||
# Also check for .py files for testing purposes.
|
||||
self.test_suffixes = {exe_suffix, test_suffix + '.py'}
|
||||
self.run_under = run_under
|
||||
|
||||
def getGTestTests(self, path, litConfig, localConfig):
|
||||
"""getGTestTests(path) - [name]
|
||||
@ -32,7 +33,7 @@ class GoogleTest(TestFormat):
|
||||
litConfig: LitConfig instance
|
||||
localConfig: TestingConfig instance"""
|
||||
|
||||
list_test_cmd = self.maybeAddPythonToCmd([path, '--gtest_list_tests'])
|
||||
list_test_cmd = self.prepareCmd([path, '--gtest_list_tests'])
|
||||
|
||||
try:
|
||||
output = subprocess.check_output(list_test_cmd,
|
||||
@ -113,7 +114,7 @@ class GoogleTest(TestFormat):
|
||||
testName = namePrefix + '/' + testName
|
||||
|
||||
cmd = [testPath, '--gtest_filter=' + testName]
|
||||
cmd = self.maybeAddPythonToCmd(cmd)
|
||||
cmd = self.prepareCmd(cmd)
|
||||
if litConfig.useValgrind:
|
||||
cmd = litConfig.valgrindArgs + cmd
|
||||
|
||||
@ -141,13 +142,17 @@ class GoogleTest(TestFormat):
|
||||
|
||||
return lit.Test.PASS,''
|
||||
|
||||
def maybeAddPythonToCmd(self, cmd):
|
||||
"""Insert the python exe into the command if cmd[0] ends in .py
|
||||
def prepareCmd(self, cmd):
|
||||
"""Insert interpreter if needed.
|
||||
|
||||
It inserts the python exe into the command if cmd[0] ends in .py or caller
|
||||
specified run_under.
|
||||
We cannot rely on the system to interpret shebang lines for us on
|
||||
Windows, so add the python executable to the command if this is a .py
|
||||
script.
|
||||
"""
|
||||
if cmd[0].endswith('.py'):
|
||||
return [sys.executable] + cmd
|
||||
cmd = [sys.executable] + cmd
|
||||
if self.run_under:
|
||||
cmd = self.run_under + cmd
|
||||
return cmd
|
||||
|
Loading…
Reference in New Issue
Block a user