1885c5593SDmitri Gribenko // RUN: rm -rf %T/out
2885c5593SDmitri Gribenko // RUN: clang-tidy -enable-check-profile -checks='-*,readability-function-size' -store-check-profile=%T/out %s -- 2>&1 | not FileCheck --match-full-lines -implicit-check-not='{{warning:|error:}}' -check-prefix=CHECK-CONSOLE %s
3885c5593SDmitri Gribenko // RUN: cat %T/out/*-clang-tidy-store-check-profile-one-tu.cpp.json | FileCheck --match-full-lines -implicit-check-not='{{warning:|error:}}' -check-prefix=CHECK-FILE %s
4885c5593SDmitri Gribenko // RUN: rm -rf %T/out
5885c5593SDmitri Gribenko // RUN: clang-tidy -enable-check-profile -checks='-*,readability-function-size' -store-check-profile=%T/out %s -- 2>&1
6885c5593SDmitri Gribenko // RUN: cat %T/out/*-clang-tidy-store-check-profile-one-tu.cpp.json | FileCheck --match-full-lines -implicit-check-not='{{warning:|error:}}' -check-prefix=CHECK-FILE %s
7885c5593SDmitri Gribenko 
8885c5593SDmitri Gribenko // CHECK-CONSOLE-NOT: ===-------------------------------------------------------------------------===
9885c5593SDmitri Gribenko // CHECK-CONSOLE-NOT: {{.*}}  --- Name ---
10885c5593SDmitri Gribenko // CHECK-CONSOLE-NOT: {{.*}}  readability-function-size
11885c5593SDmitri Gribenko // CHECK-CONSOLE-NOT: {{.*}}  Total
12885c5593SDmitri Gribenko // CHECK-CONSOLE-NOT: ===-------------------------------------------------------------------------===
13885c5593SDmitri Gribenko 
14885c5593SDmitri Gribenko // CHECK-FILE: {
15885c5593SDmitri Gribenko // CHECK-FILE-NEXT:"file": "{{.*}}clang-tidy-store-check-profile-one-tu.cpp",
16885c5593SDmitri Gribenko // CHECK-FILE-NEXT:"timestamp": "{{[0-9]+}}-{{[0-9]+}}-{{[0-9]+}} {{[0-9]+}}:{{[0-9]+}}:{{[0-9]+}}.{{[0-9]+}}",
17885c5593SDmitri Gribenko // CHECK-FILE-NEXT:"profile": {
18885c5593SDmitri Gribenko // CHECK-FILE-NEXT:	"time.clang-tidy.readability-function-size.wall": {{.*}}{{[0-9]}}.{{[0-9]+}}e{{[-+]}}{{[0-9]}}{{[0-9]}},
19885c5593SDmitri Gribenko // CHECK-FILE-NEXT:	"time.clang-tidy.readability-function-size.user": {{.*}}{{[0-9]}}.{{[0-9]+}}e{{[-+]}}{{[0-9]}}{{[0-9]}},
20*7e3b9abaSAlex Hoppen // CHECK-FILE-NEXT:	"time.clang-tidy.readability-function-size.sys": {{.*}}{{[0-9]}}.{{[0-9]+}}e{{[-+]}}{{[0-9]}}{{[0-9]}}{{,?}}
21*7e3b9abaSAlex Hoppen // If available on the platform, we also have a "time.clang-tidy.readability-function-size.instr" entry
22*7e3b9abaSAlex Hoppen // CHECK-FILE: }
23885c5593SDmitri Gribenko // CHECK-FILE-NEXT: }
24885c5593SDmitri Gribenko 
25885c5593SDmitri Gribenko // CHECK-FILE-NOT: {
26885c5593SDmitri Gribenko // CHECK-FILE-NOT: "file": {{.*}}clang-tidy-store-check-profile-one-tu.cpp{{.*}},
27885c5593SDmitri Gribenko // CHECK-FILE-NOT: "timestamp": "{{[0-9]+}}-{{[0-9]+}}-{{[0-9]+}} {{[0-9]+}}:{{[0-9]+}}:{{[0-9]+}}.{{[0-9]+}}",
28885c5593SDmitri Gribenko // CHECK-FILE-NOT: "profile": {
29885c5593SDmitri Gribenko // CHECK-FILE-NOT:	"time.clang-tidy.readability-function-size.wall": {{.*}}{{[0-9]}}.{{[0-9]+}}e{{[-+]}}{{[0-9]}}{{[0-9]}},
30885c5593SDmitri Gribenko // CHECK-FILE-NOT:	"time.clang-tidy.readability-function-size.user": {{.*}}{{[0-9]}}.{{[0-9]+}}e{{[-+]}}{{[0-9]}}{{[0-9]}},
31*7e3b9abaSAlex Hoppen // CHECK-FILE-NOT:	"time.clang-tidy.readability-function-size.sys": {{.*}}{{[0-9]}}.{{[0-9]+}}e{{[-+]}}{{[0-9]}}{{[0-9]}}{{,?}}
32885c5593SDmitri Gribenko // CHECK-FILE-NOT: }
33885c5593SDmitri Gribenko // CHECK-FILE-NOT: }
34885c5593SDmitri Gribenko 
35885c5593SDmitri Gribenko class A {
A()36885c5593SDmitri Gribenko   A() {}
~A()37885c5593SDmitri Gribenko   ~A() {}
38885c5593SDmitri Gribenko };
39