diff options
| author | Andrew Trick <atrick@apple.com> | 2011-08-30 17:42:33 +0000 |
|---|---|---|
| committer | Andrew Trick <atrick@apple.com> | 2011-08-30 17:42:33 +0000 |
| commit | d74c19449eee5d2cc0009fb1c48421f9b2b2d384 (patch) | |
| tree | 27b684d661efe2693249145ab2d93ad36115bc02 /llvm/utils | |
| parent | 59b75285f612336f2a6493a999703b983bb5d51f (diff) | |
| download | bcm5719-llvm-d74c19449eee5d2cc0009fb1c48421f9b2b2d384.tar.gz bcm5719-llvm-d74c19449eee5d2cc0009fb1c48421f9b2b2d384.zip | |
Lit option for ignoring stderr output.
This is useful for testing a build a temporarily hand instrumented
build.
Patch by arrowdodger!
llvm-svn: 138804
Diffstat (limited to 'llvm/utils')
| -rw-r--r-- | llvm/utils/lit/lit/LitConfig.py | 3 | ||||
| -rw-r--r-- | llvm/utils/lit/lit/TestFormats.py | 4 | ||||
| -rw-r--r-- | llvm/utils/lit/lit/TestRunner.py | 6 | ||||
| -rwxr-xr-x | llvm/utils/lit/lit/main.py | 2 |
4 files changed, 11 insertions, 4 deletions
diff --git a/llvm/utils/lit/lit/LitConfig.py b/llvm/utils/lit/lit/LitConfig.py index bda91744cce..2cc27811199 100644 --- a/llvm/utils/lit/lit/LitConfig.py +++ b/llvm/utils/lit/lit/LitConfig.py @@ -20,7 +20,7 @@ class LitConfig: def __init__(self, progname, path, quiet, useValgrind, valgrindLeakCheck, valgrindArgs, useTclAsSh, - noExecute, debug, isWindows, + noExecute, ignoreStdErr, debug, isWindows, params): # The name of the test runner. self.progname = progname @@ -32,6 +32,7 @@ class LitConfig: self.valgrindUserArgs = list(valgrindArgs) self.useTclAsSh = bool(useTclAsSh) self.noExecute = noExecute + self.ignoreStdErr = ignoreStdErr self.debug = debug self.isWindows = bool(isWindows) self.params = dict(params) diff --git a/llvm/utils/lit/lit/TestFormats.py b/llvm/utils/lit/lit/TestFormats.py index 6dda2fdb608..d1c0558b5f3 100644 --- a/llvm/utils/lit/lit/TestFormats.py +++ b/llvm/utils/lit/lit/TestFormats.py @@ -125,7 +125,11 @@ class ShTest(FileBasedTest): self.execute_external) class TclTest(FileBasedTest): + def __init__(self, ignoreStdErr=False): + self.ignoreStdErr = ignoreStdErr + def execute(self, test, litConfig): + litConfig.ignoreStdErr = self.ignoreStdErr return TestRunner.executeTclTest(test, litConfig) ### diff --git a/llvm/utils/lit/lit/TestRunner.py b/llvm/utils/lit/lit/TestRunner.py index a40644cd187..0cc1f394d47 100644 --- a/llvm/utils/lit/lit/TestRunner.py +++ b/llvm/utils/lit/lit/TestRunner.py @@ -535,13 +535,13 @@ def executeTclTest(test, litConfig): # considered to fail if there is any standard error output. out,err,exitCode = res if isXFail: - ok = exitCode != 0 or err + ok = exitCode != 0 or err and not litConfig.ignoreStdErr if ok: status = Test.XFAIL else: status = Test.XPASS else: - ok = exitCode == 0 and not err + ok = exitCode == 0 and (not err or litConfig.ignoreStdErr) if ok: status = Test.PASS else: @@ -552,7 +552,7 @@ def executeTclTest(test, litConfig): # Set a flag for formatTestOutput so it can explain why the test was # considered to have failed, despite having an exit code of 0. - failDueToStderr = exitCode == 0 and err + failDueToStderr = exitCode == 0 and err and not litConfig.ignoreStdErr return formatTestOutput(status, out, err, exitCode, failDueToStderr, script) diff --git a/llvm/utils/lit/lit/main.py b/llvm/utils/lit/lit/main.py index 13d263009dd..e1a380c3fcb 100755 --- a/llvm/utils/lit/lit/main.py +++ b/llvm/utils/lit/lit/main.py @@ -328,6 +328,7 @@ def load_test_suite(inputs): valgrindArgs = [], useTclAsSh = False, noExecute = False, + ignoreStdErr = False, debug = False, isWindows = (platform.system()=='Windows'), params = {}) @@ -485,6 +486,7 @@ def main(builtinParameters = {}): # Bump the GIL check interval, its more imp valgrindArgs = opts.valgrindArgs, useTclAsSh = opts.useTclAsSh, noExecute = opts.noExecute, + ignoreStdErr = False, debug = opts.debug, isWindows = (platform.system()=='Windows'), params = userParams) |

