| 1 | // RUN: echo "foo f;" > %t.cpp |
| 2 | // RUN: clang-include-fixer -db=fixed -input='foo= "foo.h","bar.h"' -output-headers %t.cpp -- | FileCheck %s |
| 3 | // RUN: cat %t.cpp | clang-include-fixer -stdin -insert-header='{FilePath: "%/t.cpp", QuerySymbolInfos: [{RawIdentifier: foo, Range: {Offset: 0, Length: 3}}], HeaderInfos: [{Header: "\"foo.h\"", QualifiedName: "foo"}]}' %t.cpp | FileCheck %s -check-prefix=CHECK-CODE |
| 4 | // RUN: cat %t.cpp | not clang-include-fixer -stdin -insert-header='{FilePath: "%/t.cpp", QuerySymbolInfos: [{RawIdentifier: foo, Range: {Offset: 0, Length: 3}}], HeaderInfos: [{Header: "\"foo.h\"", QualifiedName: "foo"},{Header: "\"foo2.h\"", QualifiedName: "foo"}]}' %t.cpp |
| 5 | // RUN: cat %t.cpp | clang-include-fixer -stdin -insert-header='{FilePath: "%/t.cpp", QuerySymbolInfos: [{RawIdentifier: foo, Range: {Offset: 0, Length: 3}}], HeaderInfos: [{Header: "\"foo.h\"", QualifiedName: "a:foo"},{Header: "\"foo.h\"", QualifiedName: "b:foo"}]}' %t.cpp |
| 6 | // |
| 7 | // CHECK: "HeaderInfos": [ |
| 8 | // CHECK-NEXT: {"Header": "\"foo.h\"", |
| 9 | // CHECK-NEXT: "QualifiedName": "foo"}, |
| 10 | // CHECK-NEXT: {"Header": "\"bar.h\"", |
| 11 | // CHECK-NEXT: "QualifiedName": "foo"} |
| 12 | // CHECK-NEXT:] |
| 13 | // |
| 14 | // CHECK-CODE: #include "foo.h" |
| 15 | // CHECK-CODE: foo f; |
| 16 | |