|  | RUN: llvm-cov report -instr-profile %S/Inputs/sources_specified/main.profdata \ | 
|  | RUN:   -path-equivalence=/tmp,%S/Inputs \ | 
|  | RUN:   %S/Inputs/sources_specified/main.covmapping \ | 
|  | RUN:   %S/Inputs/sources_specified/main.cc %S/Inputs/sources_specified/extra \ | 
|  | RUN:   | FileCheck -check-prefix=REPORT %s | 
|  |  | 
|  | RUN: llvm-cov show -instr-profile %S/Inputs/sources_specified/main.profdata \ | 
|  | RUN:   -path-equivalence=/tmp,%S/Inputs \ | 
|  | RUN:   %S/Inputs/sources_specified/main.covmapping \ | 
|  | RUN:   %S/Inputs/sources_specified/main.cc %S/Inputs/sources_specified/extra \ | 
|  | RUN:   | FileCheck -check-prefix=SHOW %s | 
|  |  | 
|  | # Order of files may differ, check the total values calculated. | 
|  | REPORT-NOT: {{.*}}abs.h{{.*}} | 
|  | REPORT: {{^}}TOTAL 3{{.*}}72.73% | 
|  |  | 
|  | # Order of files may differ, check that there are 3 files and not abs.h. | 
|  | SHOW-NOT: {{.*}}abs.h{{.*}} | 
|  | SHOW: {{.*}}sources_specified{{.*}} | 
|  | SHOW: {{.*}}sources_specified{{.*}} | 
|  | SHOW: {{.*}}sources_specified{{.*}} | 
|  |  | 
|  |  | 
|  | # Test "export" command. Use a temp .json file as output is a single line. | 
|  | RUN: llvm-cov export -instr-profile %S/Inputs/sources_specified/main.profdata \ | 
|  | RUN:   -path-equivalence=/tmp,%S/Inputs \ | 
|  | RUN:   %S/Inputs/sources_specified/main.covmapping \ | 
|  | RUN:   %S/Inputs/sources_specified/main.cc %S/Inputs/sources_specified/extra \ | 
|  | RUN:   > %t.export.json | 
|  |  | 
|  | RUN: FileCheck -check-prefix=NO-EXPORT %s < %t.export.json | 
|  | RUN: FileCheck -check-prefix=EXPORT %s < %t.export.json | 
|  |  | 
|  | NO-EXPORT-NOT: {{"filename":"(/|\\\\)tmp(/|\\\\)sources_specified(/|\\\\)abs.h"}} | 
|  | EXPORT-DAG: {{"filename":"(/|\\\\)tmp(/|\\\\)sources_specified(/|\\\\)main.cc"}} | 
|  | EXPORT-DAG: {{"filename":"(/|\\\\)tmp(/|\\\\)sources_specified(/|\\\\)extra(/|\\\\)dec.h"}} | 
|  | EXPORT-DAG: {{"filename":"(/|\\\\)tmp(/|\\\\)sources_specified(/|\\\\)extra(/|\\\\)inc.h"}} | 
|  |  | 
|  | Instructions for regenerating the test: | 
|  |  | 
|  | # cd %S/Inputs/sources_specified | 
|  | cp -r . /tmp/sources_specified | 
|  |  | 
|  | clang -mllvm -enable-name-compression=false -fprofile-instr-generate \ | 
|  | -fcoverage-mapping /tmp/sources_specified/main.cc -o main | 
|  |  | 
|  | LLVM_PROFILE_FILE="main.raw" ./main | 
|  | llvm-profdata merge main.raw -o main.profdata | 
|  | llvm-cov convert-for-testing ./main -o ./main.covmapping | 
|  | rm main main.raw |