## Test that the string table is dumped correctly.

## The string table contains more than one entry.
# RUN: yaml2obj --docnum=1 %s -o %t1
# RUN: llvm-readobj --string-table %t1 | FileCheck %s --check-prefix=BASIC

# BASIC:      StringTable {
# BASIC-NEXT:   Length: 16
# BASIC-NEXT:   [     4]   name2
# BASIC-NEXT:   [     a]   name1
# BASIC-NEXT: }

--- !XCOFF
FileHeader:
  MagicNumber: 0x01F7
Symbols:
  - Name: name1
  - Name: name2

## The string table just contains a single-byte sized string entry.
# RUN: yaml2obj --docnum=2 %s -o %t2
# RUN: llvm-readobj --string-table %t2 | FileCheck %s --check-prefix=SINGLE-BYTE

# SINGLE-BYTE:      StringTable {
# SINGLE-BYTE-NEXT:   Length: 6
# SINGLE-BYTE-NEXT:   [     4]   n
# SINGLE-BYTE-NEXT: }

--- !XCOFF
FileHeader:
  MagicNumber: 0x01F7
Symbols:
  - Name: n

## There is no string table.
# RUN: yaml2obj --docnum=3 %s -o %t3
# RUN: llvm-readobj --string-table %t3 | FileCheck %s --check-prefix=NO-STRTBL

# NO-STRTBL:      StringTable {
# NO-STRTBL-NEXT:   Length: 0
# NO-STRTBL-NEXT: }

--- !XCOFF
FileHeader:
  MagicNumber: 0x01F7
