diff --git a/utils/lit/lit/formats/googletest.py b/utils/lit/lit/formats/googletest.py index 04da2e9cef7..059eb99762e 100644 --- a/utils/lit/lit/formats/googletest.py +++ b/utils/lit/lit/formats/googletest.py @@ -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, run_under = []): + def __init__(self, test_sub_dirs, test_suffix): self.test_sub_dirs = str(test_sub_dirs).split(';') # On Windows, assume tests will also end in '.exe'. @@ -21,7 +21,6 @@ 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] @@ -33,7 +32,7 @@ class GoogleTest(TestFormat): litConfig: LitConfig instance localConfig: TestingConfig instance""" - list_test_cmd = self.prepareCmd([path, '--gtest_list_tests']) + list_test_cmd = self.maybeAddPythonToCmd([path, '--gtest_list_tests']) try: output = subprocess.check_output(list_test_cmd, @@ -114,7 +113,7 @@ class GoogleTest(TestFormat): testName = namePrefix + '/' + testName cmd = [testPath, '--gtest_filter=' + testName] - cmd = self.prepareCmd(cmd) + cmd = self.maybeAddPythonToCmd(cmd) if litConfig.useValgrind: cmd = litConfig.valgrindArgs + cmd @@ -142,17 +141,13 @@ class GoogleTest(TestFormat): return lit.Test.PASS,'' - def prepareCmd(self, cmd): - """Insert interpreter if needed. + def maybeAddPythonToCmd(self, cmd): + """Insert the python exe into the command if cmd[0] ends in .py - 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'): - cmd = [sys.executable] + cmd - if self.run_under: - cmd = self.run_under + cmd + return [sys.executable] + cmd return cmd