blob: 71e3d5dd9d6c3be739e9dffb24eb38b7e46d6f71 [file] [log] [blame]
; RUN: echo ciao > %t.good
; RUN: echo world >> %t.good
; RUN: echo hello > %t.err
; RUN: echo world >> %t.err
; RUN: echo 'CHECK: ciao' > %t.check
; RUN: echo 'CHECK-NEXT: world' >> %t.check
;--------------------------------------------------
; unknown value
;--------------------------------------------------
; RUN: not FileCheck -input-file %t.good %t.check -check-prefix=CHECK \
; RUN: -match-full-lines -dump-input=foobar 2>&1 \
; RUN: | FileCheck %s -match-full-lines -check-prefix=BADVAL
; No positional arg.
; RUN: not FileCheck -dump-input=foobar 2>&1 \
; RUN: | FileCheck %s -match-full-lines -check-prefix=BADVAL
BADVAL: FileCheck{{.*}}: for the -dump-input option: Cannot find option named 'foobar'!
;--------------------------------------------------
; help
;--------------------------------------------------
; Appended to normal command line.
; RUN: FileCheck -input-file %t.err -color %t.check -dump-input=help \
; RUN: | FileCheck %s -check-prefix=HELP
; No positional arg.
; RUN: FileCheck -dump-input=help | FileCheck %s -check-prefix=HELP
HELP-NOT: {{.}}
HELP: The following description was requested by -dump-input=help
HELP: try{{.*}}-color
HELP-NOT: {{.}}
;--------------------------------------------------
; never
;--------------------------------------------------
; RUN: FileCheck -input-file %t.good %t.check -check-prefix=CHECK \
; RUN: -match-full-lines -dump-input=never 2>&1 \
; RUN: | FileCheck %s -match-full-lines -check-prefix=CHECK-NODUMP -allow-empty
; RUN: not FileCheck -input-file %t.err %t.check -check-prefix=CHECK \
; RUN: -match-full-lines -dump-input=never 2>&1 \
; RUN: | FileCheck %s -match-full-lines -check-prefix=CHECK-NODUMP
;--------------------------------------------------
; default: never
;--------------------------------------------------
; RUN: FileCheck -input-file %t.good %t.check -check-prefix=CHECK \
; RUN: -match-full-lines 2>&1 \
; RUN: | FileCheck %s -match-full-lines -check-prefix=CHECK-NODUMP -allow-empty
; RUN: not FileCheck -input-file %t.err %t.check -check-prefix=CHECK \
; RUN: -match-full-lines 2>&1 \
; RUN: | FileCheck %s -match-full-lines -check-prefix=CHECK-NODUMP
;--------------------------------------------------
; fail
;--------------------------------------------------
; RUN: FileCheck -input-file %t.good %t.check -check-prefix=CHECK \
; RUN: -match-full-lines -dump-input=fail 2>&1 \
; RUN: | FileCheck %s -match-full-lines -check-prefix=CHECK-NODUMP -allow-empty
; RUN: not FileCheck -input-file %t.err %t.check -check-prefix=CHECK \
; RUN: -match-full-lines -dump-input=fail 2>&1 \
; RUN: | FileCheck %s -match-full-lines -check-prefix=CHECK-ERR
;--------------------------------------------------
; -dump-input-on-failure
;--------------------------------------------------
; RUN: FileCheck -input-file %t.good %t.check -check-prefix=CHECK \
; RUN: -match-full-lines -dump-input-on-failure 2>&1 \
; RUN: | FileCheck %s -match-full-lines -check-prefix=CHECK-NODUMP -allow-empty
; RUN: not FileCheck -input-file %t.err %t.check -check-prefix=CHECK \
; RUN: -match-full-lines -dump-input-on-failure 2>&1 \
; RUN: | FileCheck %s -match-full-lines -check-prefix=CHECK-ERR
; RUN: env FILECHECK_DUMP_INPUT_ON_FAILURE=1 \
; RUN: FileCheck -input-file %t.good %t.check -check-prefix=CHECK \
; RUN: -match-full-lines 2>&1 \
; RUN: | FileCheck %s -match-full-lines -check-prefix=CHECK-NODUMP -allow-empty
; RUN: env FILECHECK_DUMP_INPUT_ON_FAILURE=1 \
; RUN: not FileCheck -input-file %t.err %t.check -check-prefix=CHECK \
; RUN: -match-full-lines 2>&1 \
; RUN: | FileCheck %s -match-full-lines -check-prefix=CHECK-ERR
;--------------------------------------------------
; always
;--------------------------------------------------
; RUN: FileCheck -input-file %t.good %t.check -check-prefix=CHECK \
; RUN: -match-full-lines -dump-input=always -v 2>&1 \
; RUN: | FileCheck %s -match-full-lines -check-prefix=CHECK-GOOD
; RUN: not FileCheck -input-file %t.err %t.check -check-prefix=CHECK \
; RUN: -match-full-lines -dump-input=always 2>&1 \
; RUN: | FileCheck %s -match-full-lines -check-prefix=CHECK-ERR
; END.
; CHECK-GOOD: Full input was:
; CHECK-GOOD-NEXT: <<<<<<
; CHECK-GOOD-NEXT: 1: ciao
; CHECK-GOOD-NEXT: check:1 ^~~~
; CHECK-GOOD-NEXT: 2: world
; CHECK-GOOD-NEXT: next:2 ^~~~~
; CHECK-GOOD-NEXT: >>>>>>
; CHECK-ERR: Full input was:
; CHECK-ERR-NEXT: <<<<<<
; CHECK-ERR-NEXT: 1: hello
; CHECK-ERR-NEXT: check:1 X~~~~
; CHECK-ERR-NEXT: 2: world
; CHECK-ERR-NEXT: check:1 ~~~~~ error: no match found
; CHECK-ERR-NEXT: >>>>>>
; CHECK-NODUMP-NOT: <<<<<<