Recommit "rL366894: [yaml2obj] - Allow custom fields for the SHT_UNDEF sections."
[llvm-complete.git] / test / tools / llvm-ar / move-after.test
blob871d120c73b78508ee344bf0eff802df174bf868
1 ## Test moving files after a file.
3 RUN: touch %t1.txt
4 RUN: touch %t2.txt
5 RUN: touch %t3.txt
6 RUN: touch %t4.txt
8 # Move one file:
9 RUN: rm -f %t-one.a
10 RUN: llvm-ar rc %t-one.a %t1.txt %t2.txt %t3.txt
11 RUN: llvm-ar ma %t1.txt %t-one.a %t3.txt
12 RUN: llvm-ar t %t-one.a | FileCheck %s --check-prefix=ONE
14 ONE:      1.txt
15 ONE-NEXT: 3.txt
16 ONE-NEXT: 2.txt
18 # Move file to back:
19 RUN: rm -f %t-back.a
20 RUN: llvm-ar rc %t-back.a %t1.txt %t2.txt %t3.txt
21 RUN: llvm-ar ma %t2.txt %t-back.a %t1.txt
22 RUN: llvm-ar t %t-back.a | FileCheck %s --check-prefix=BACK
24 BACK:      2.txt
25 BACK-NEXT: 1.txt
26 BACK-NEXT: 3.txt
28 # Move multiple files:
29 RUN: rm -f %t-multiple.a
30 RUN: llvm-ar rc %t-multiple.a %t1.txt %t2.txt %t3.txt %t4.txt
31 RUN: llvm-ar ma %t1.txt %t-multiple.a  %t4.txt %t3.txt
32 RUN: llvm-ar t %t-multiple.a | FileCheck %s --check-prefix=MULTIPLE
34 MULTIPLE:      1.txt
35 MULTIPLE-NEXT: 3.txt
36 MULTIPLE-NEXT: 4.txt
37 MULTIPLE-NEXT: 2.txt
39 # Move after invalid file:
40 RUN: rm -f %t-invalid.a
41 RUN: llvm-ar rc %t-invalid.a %t1.txt %t2.txt %t3.txt
42 RUN: not llvm-ar ma invalid.txt %t-invalid.a %t2.txt 2>&1 \
43 RUN:   | FileCheck %s --check-prefix=ERROR
44 RUN: llvm-ar t %t-invalid.a | FileCheck %s --check-prefix=INVALID
46 ERROR: error: Insertion point not found.
47 INVALID:      1.txt
48 INVALID-NEXT: 2.txt
49 INVALID-NEXT: 3.txt
51 # Move file to the same position:
52 RUN: rm -f %t-position.a
53 RUN: llvm-ar rc %t-position.a %t1.txt %t2.txt %t3.txt
54 RUN: llvm-ar ma %t1.txt %t-position.a %t2.txt
55 RUN: llvm-ar t %t-position.a | FileCheck %s --check-prefix=POSITION
57 POSITION:      1.txt
58 POSITION-NEXT: 2.txt
59 POSITION-NEXT: 3.txt