Split executeShTest into two parts so that it can be better leveraged by libc++
authorEric Fiselier <eric@efcs.ca>
Sat, 20 Dec 2014 03:23:53 +0000 (03:23 +0000)
committerEric Fiselier <eric@efcs.ca>
Sat, 20 Dec 2014 03:23:53 +0000 (03:23 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@224672 91177308-0d34-0410-b5e6-96231b3b80d8

utils/lit/lit/TestRunner.py

index 6688029347a8359bad1e520569b979ce2e54eb24..268e46c38f7444b33d5768c160a9664f72e7e5a0 100644 (file)
@@ -489,19 +489,8 @@ def parseIntegratedTestScript(test, normalize_slashes=False,
 
     return script,tmpBase,execdir
 
-def executeShTest(test, litConfig, useExternalSh,
-                  extra_substitutions=[]):
-    if test.config.unsupported:
-        return (Test.UNSUPPORTED, 'Test is unsupported')
-
-    res = parseIntegratedTestScript(test, useExternalSh, extra_substitutions)
-    if isinstance(res, lit.Test.Result):
-        return res
-    if litConfig.noExecute:
-        return lit.Test.Result(Test.PASS)
-
-    script, tmpBase, execdir = res
-
+def _runShTest(test, litConfig, useExternalSh,
+                   script, tmpBase, execdir):
     # Create the output directory if it does not already exist.
     lit.util.mkdir_p(os.path.dirname(tmpBase))
 
@@ -529,3 +518,19 @@ def executeShTest(test, litConfig, useExternalSh,
         output += """Command Output (stderr):\n--\n%s\n--\n""" % (err,)
 
     return lit.Test.Result(status, output)
+
+
+def executeShTest(test, litConfig, useExternalSh,
+                  extra_substitutions=[]):
+    if test.config.unsupported:
+        return (Test.UNSUPPORTED, 'Test is unsupported')
+
+    res = parseIntegratedTestScript(test, useExternalSh, extra_substitutions)
+    if isinstance(res, lit.Test.Result):
+        return res
+    if litConfig.noExecute:
+        return lit.Test.Result(Test.PASS)
+
+    script, tmpBase, execdir = res
+    return _runShTest(test, litConfig, useExternalSh, script, tmpBase, execdir)
+