1 // RUN: rm -rf %t 2 // RUN: mkdir %t 3 // RUN: echo "" > %t/compile_flags.txt 4 // RUN: cp "%s" "%t/test.cpp" 5 // RUN: clang-doc --doxygen --public --executor=standalone -p %t %t/test.cpp -output=%t/docs 6 // This produces two files, index.yaml and one for the record named by its USR 7 // (which we don't know in advance). This checks the record file by searching 8 // for a name with a 40-char USR name. 9 // RUN: find %t/docs -regex ".*/[0-9A-F]*.yaml" -exec cat {} ";" | FileCheck %s --check-prefix=CHECK 10 // RUN: rm -rf %t 11 12 class Record { 13 private: 14 void function_private(); 15 16 public: 17 void function_public(); 18 }; 19 20 void Record::function_private() {} 21 22 void Record::function_public() {} 23 24 // CHECK: --- 25 // CHECK-NEXT: USR: '{{([0-9A-F]{40})}}' 26 // CHECK-NEXT: Name: 'Record' 27 // CHECK-NEXT: Path: 'GlobalNamespace' 28 // CHECK-NEXT: Namespace: 29 // CHECK-NEXT: - Type: Namespace 30 // CHECK-NEXT: Name: 'GlobalNamespace' 31 // CHECK-NEXT: QualName: 'GlobalNamespace' 32 // CHECK-NEXT: DefLocation: 33 // CHECK-NEXT: LineNumber: 12 34 // CHECK-NEXT: Filename: '{{.*}}' 35 // CHECK-NEXT: TagType: Class 36 // CHECK-NEXT: ChildFunctions: 37 // CHECK-NEXT: - USR: '{{([0-9A-F]{40})}}' 38 // CHECK-NEXT: Name: 'function_public' 39 // CHECK-NEXT: Namespace: 40 // CHECK-NEXT: - Type: Record 41 // CHECK-NEXT: Name: 'Record' 42 // CHECK-NEXT: QualName: 'Record' 43 // CHECK-NEXT: USR: '{{([0-9A-F]{40})}}' 44 // CHECK-NEXT: - Type: Namespace 45 // CHECK-NEXT: Name: 'GlobalNamespace' 46 // CHECK-NEXT: QualName: 'GlobalNamespace' 47 // CHECK-NEXT: DefLocation: 48 // CHECK-NEXT: LineNumber: 22 49 // CHECK-NEXT: Filename: '{{.*}}' 50 // CHECK-NEXT: Location: 51 // CHECK-NEXT: - LineNumber: 17 52 // CHECK-NEXT: Filename: '{{.*}}' 53 // CHECK-NEXT: IsMethod: true 54 // CHECK-NEXT: Parent: 55 // CHECK-NEXT: Type: Record 56 // CHECK-NEXT: Name: 'Record' 57 // CHECK-NEXT: QualName: 'Record' 58 // CHECK-NEXT: USR: '{{([0-9A-F]{40})}}' 59 // CHECK-NEXT: ReturnType: 60 // CHECK-NEXT: Type: 61 // CHECK-NEXT: Name: 'void' 62 // CHECK-NEXT: QualName: 'void' 63 // CHECK-NEXT: Access: Public 64 // CHECK-NEXT: ... 65