1*f23ce128SJames Henderson## Show that llvm-strings can handle stdin input properly. 2*f23ce128SJames Henderson 3*f23ce128SJames Henderson## Case 1: output with single string. 4*f23ce128SJames HendersonRUN: echo -n "abcdefg" | llvm-strings - | FileCheck %s --check-prefix=CASE1 --implicit-check-not={{.}} 5*f23ce128SJames HendersonCASE1: abcdefg 6*f23ce128SJames Henderson 7*f23ce128SJames Henderson## Case 2: output too short for string. 8*f23ce128SJames HendersonRUN: echo -n "abc" | llvm-strings - | FileCheck %s --implicit-check-not={{.}} --allow-empty 9*f23ce128SJames Henderson 10*f23ce128SJames Henderson## Case 3: output with new line. 11*f23ce128SJames HendersonRUN: echo -e "abcd\nefgh" | llvm-strings - | FileCheck %s --check-prefix=CASE3 --implicit-check-not={{.}} 12*f23ce128SJames HendersonCASE3: abcd 13*f23ce128SJames HendersonCASE3-NEXT: efgh 14*f23ce128SJames Henderson 15*f23ce128SJames Henderson## Case 4: output containing unprintable characters. 16*f23ce128SJames HendersonRUN: echo -e "abcd\x00ef\x1fghij\x7fklmn" | llvm-strings - | FileCheck %s --check-prefix=CASE4 --implicit-check-not={{.}} 17*f23ce128SJames HendersonCASE4: abcd 18*f23ce128SJames HendersonCASE4-NEXT: ghij 19*f23ce128SJames HendersonCASE4-NEXT: klmn 20*f23ce128SJames Henderson 21*f23ce128SJames Henderson## Case 5: no file name specified is equivalent to explicitly requesting stdin. 22*f23ce128SJames HendersonRUN: echo -n "abcdefg" | llvm-strings | FileCheck %s --check-prefix=CASE1 --implicit-check-not={{.}} 23