llvm-project/llvm/test/tools/llvm-cov/coverage-prefix-map.test
Keith Smiley b5da3120b8 [llvm-cov][NFC] Add test for coverage-prefix-map remappings
This test covers acts as a regression test for these fixes:

c75a0a1e9dc29be4e00d37d0d00288afc1a6153f
dd388ba3e0b0a5f06565d0bcb6e1aebb5daac065

Differential Revision: https://reviews.llvm.org/D108805
2021-08-30 17:19:57 -07:00

28 lines
1.1 KiB
Plaintext

# RUN: llvm-cov report -path-equivalence=.,%S/Inputs/coverage_prefix_map \
# RUN: -instr-profile %S/Inputs/coverage_prefix_map/main.profdata \
# RUN: %S/Inputs/coverage_prefix_map/main.covmapping \
# RUN: %S/Inputs/coverage_prefix_map/bar.h \
# RUN: | FileCheck --check-prefix=REPORT --implicit-check-not=main.c %s
# RUN: llvm-cov export -format lcov -path-equivalence=.,%S/Inputs/coverage_prefix_map \
# RUN: -instr-profile %S/Inputs/coverage_prefix_map/main.profdata \
# RUN: %S/Inputs/coverage_prefix_map/main.covmapping \
# RUN: %S/Inputs/coverage_prefix_map/bar.h \
# RUN: | FileCheck --check-prefix=LCOV --implicit-check-not=main.c %s
# REPORT: {{^}}bar.h{{.*}}
# REPORT: {{^}}TOTAL{{.*}}100.00%
# LCOV: SF:.{{/|\\+}}bar.h
# LCOV-NOT: SF
Instructions for regenerating the test:
# cd %S/Inputs/coverage_prefix_map
cp -r . /tmp/coverage_prefix_map
clang -fprofile-instr-generate -mllvm -enable-name-compression=false -fcoverage-mapping -fcoverage-prefix-map=$PWD=. 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