radix.test 2.04 KB
## Show that llvm-strings can handle the -t/--radix switch properly.

RUN: echo one > %t
RUN: echo two >> %t
RUN: echo three >> %t
RUN: echo four >> %t
RUN: echo five >> %t
RUN: echo six >> %t
RUN: echo seven >> %t
RUN: echo eight >> %t
RUN: echo nine >> %t
RUN: echo ten >> %t

RUN: llvm-strings %t | FileCheck %s -check-prefix CHECK-NONE --implicit-check-not={{.}}
RUN: llvm-strings -t d %t | FileCheck %s -check-prefix CHECK-DEC --strict-whitespace --implicit-check-not={{.}}
RUN: llvm-strings -t o %t | FileCheck %s -check-prefix CHECK-OCT --strict-whitespace --implicit-check-not={{.}}
RUN: llvm-strings -t x %t | FileCheck %s -check-prefix CHECK-HEX --strict-whitespace --implicit-check-not={{.}}

## Show --radix works too.
RUN: llvm-strings --radix d %t | FileCheck %s -check-prefix CHECK-DEC --strict-whitespace
RUN: llvm-strings --radix o %t | FileCheck %s -check-prefix CHECK-OCT --strict-whitespace
RUN: llvm-strings --radix x %t | FileCheck %s -check-prefix CHECK-HEX --strict-whitespace

## Show different syntaxes work.
RUN: llvm-strings --radix=d %t | FileCheck %s -check-prefix CHECK-DEC --strict-whitespace
RUN: llvm-strings -t=d %t | FileCheck %s -check-prefix CHECK-DEC --strict-whitespace

CHECK-NONE: {{^}}three
CHECK-NONE: {{^}}four
CHECK-NONE: {{^}}five
CHECK-NONE: {{^}}seven
CHECK-NONE: {{^}}eight
CHECK-NONE: {{^}}nine

CHECK-DEC: {{^}}      8 three
CHECK-DEC: {{^}}     14 four
CHECK-DEC: {{^}}     19 five
CHECK-DEC: {{^}}     28 seven
CHECK-DEC: {{^}}     34 eight
CHECK-DEC: {{^}}     40 nine

CHECK-OCT: {{^}}     10 three
CHECK-OCT: {{^}}     16 four
CHECK-OCT: {{^}}     23 five
CHECK-OCT: {{^}}     34 seven
CHECK-OCT: {{^}}     42 eight
CHECK-OCT: {{^}}     50 nine

CHECK-HEX: {{^}}      8 three
CHECK-HEX: {{^}}      e four
CHECK-HEX: {{^}}     13 five
CHECK-HEX: {{^}}     1c seven
CHECK-HEX: {{^}}     22 eight
CHECK-HEX: {{^}}     28 nine

## Show that an invalid value is rejected.
RUN: not llvm-strings --radix z %t 2>&1 | FileCheck %s --check-prefix=INVALID
INVALID: llvm-strings{{.*}}: for the --radix option: Cannot find option named 'z'!