mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-23 11:13:28 +01:00
f9ea32fcfd
The test was failing on Windows machines which had bash.exe on PATH (but not in the so called lit tools dir, containing cmp.exe, grep.exe etc.). The problem was that the outer lit invocation would load LLVMConfig from utils/lit/lit/llvm/config.py, which looks up the tools path with getToolsPath(). That has a surprising side effect of also setting bashPath, in our case setting it to empty. The outer lit invocation would thus configure the pdbg0 and pdbg1 substitutions based on not running with bash. But the inner lit invocation would not load LLVMConfig, so bash would be found on PATH, that would be used as external shell, and so the output wouldn't match pdbg0 and pdbg1. It seems weird to me that getBashPath() will return different results depending on whether getToolsPath() has been called before, but I also don't know how to fix it properly. This commit just relaxes the test case, because there doesn't seem to be much point in testing for the exact syntax of the run file as long as it works. (See https://crbug.com/850023) llvm-svn: 334100
71 lines
2.2 KiB
Python
71 lines
2.2 KiB
Python
# Check that -vv makes the line number of the failing RUN command clear.
|
|
# (-v is actually sufficient in the case of the internal shell.)
|
|
#
|
|
# RUN: not %{lit} -j 1 -vv %{inputs}/shtest-run-at-line > %t.out
|
|
# RUN: FileCheck --input-file %t.out %s
|
|
#
|
|
# END.
|
|
|
|
|
|
# CHECK: Testing: 4 tests
|
|
|
|
|
|
# In the case of the external shell, we check for only RUN lines in stderr in
|
|
# case some shell implementations format "set -x" output differently.
|
|
|
|
# CHECK-LABEL: FAIL: shtest-run-at-line :: external-shell/basic.txt
|
|
|
|
# CHECK: Script:
|
|
# CHECK: RUN: at line 4{{.*}} true
|
|
# CHECK-NEXT: RUN: at line 5{{.*}} false
|
|
# CHECK-NEXT: RUN: at line 6{{.*}} true
|
|
|
|
# CHECK: RUN: at line 4
|
|
# CHECK: RUN: at line 5
|
|
# CHECK-NOT: RUN
|
|
|
|
# CHECK-LABEL: FAIL: shtest-run-at-line :: external-shell/line-continuation.txt
|
|
|
|
# CHECK: Script:
|
|
# CHECK: RUN: at line 4{{.*}} echo 'foo bar' | FileCheck
|
|
# CHECK-NEXT: RUN: at line 6{{.*}} echo 'foo baz' | FileCheck
|
|
# CHECK-NEXT: RUN: at line 9{{.*}} echo 'foo bar' | FileCheck
|
|
|
|
# CHECK: RUN: at line 4
|
|
# CHECK: RUN: at line 6
|
|
# CHECK-NOT: RUN
|
|
|
|
|
|
# CHECK-LABEL: FAIL: shtest-run-at-line :: internal-shell/basic.txt
|
|
|
|
# CHECK: Script:
|
|
# CHECK: : 'RUN: at line 1'; true
|
|
# CHECK-NEXT: : 'RUN: at line 2'; false
|
|
# CHECK-NEXT: : 'RUN: at line 3'; true
|
|
|
|
# CHECK: Command Output (stdout)
|
|
# CHECK: $ ":" "RUN: at line 1"
|
|
# CHECK-NEXT: $ "true"
|
|
# CHECK-NEXT: $ ":" "RUN: at line 2"
|
|
# CHECK-NEXT: $ "false"
|
|
# CHECK-NOT: RUN
|
|
|
|
# CHECK-LABEL: FAIL: shtest-run-at-line :: internal-shell/line-continuation.txt
|
|
|
|
# CHECK: Script:
|
|
# CHECK: : 'RUN: at line 1'; : first line continued to second line
|
|
# CHECK-NEXT: : 'RUN: at line 3'; echo 'foo bar' | FileCheck
|
|
# CHECK-NEXT: : 'RUN: at line 5'; echo 'foo baz' | FileCheck
|
|
# CHECK-NEXT: : 'RUN: at line 8'; echo 'foo bar' | FileCheck
|
|
|
|
# CHECK: Command Output (stdout)
|
|
# CHECK: $ ":" "RUN: at line 1"
|
|
# CHECK-NEXT: $ ":" "first" "line" "continued" "to" "second" "line"
|
|
# CHECK-NEXT: $ ":" "RUN: at line 3"
|
|
# CHECK-NEXT: $ "echo" "foo bar"
|
|
# CHECK-NEXT: $ "FileCheck" "{{.*}}"
|
|
# CHECK-NEXT: $ ":" "RUN: at line 5"
|
|
# CHECK-NEXT: $ "echo" "foo baz"
|
|
# CHECK-NEXT: $ "FileCheck" "{{.*}}"
|
|
# CHECK-NOT: RUN
|