llvm-for-llvmta/test/tools/llvm-cov/gcov/relative-only.test

39 lines
1.4 KiB
Plaintext
Raw Normal View History

2022-04-25 10:02:23 +02:00
# Test -r (--relative-only) and -s (--source-prefix).
# UNSUPPORTED: system-windows
RUN: rm -rf %t && mkdir %t && cd %t
RUN: cp %S/Inputs/abs-path.gcno %S/Inputs/abs-path.gcda .
RUN: llvm-cov gcov abs-path.gcda | FileCheck %s
RUN: rm abs-path.c.gcov a.h.gcov
CHECK: File '/tmp/c/abs-path.c'
CHECK: File '/tmp/h/a.h'
# If there is no source file with a relative path, nothing is dumped.
RUN: llvm-cov gcov -r abs-path.gcda 2>&1 | count 0
RUN: llvm-cov gcov -r -s /t abs-path.gcda 2>&1 | count 0
RUN: not ls abs-path.c.gcov 2> /dev/null
# -s strips a prefix from filenames and can change filtering of -r.
RUN: llvm-cov gcov -r -s /tmp abs-path.gcda | FileCheck %s --check-prefix=STRIP1 --match-full-lines --strict-whitespace
RUN: FileCheck %s --check-prefix=STRIP1_C < abs-path.c.gcov
RUN: FileCheck %s --check-prefix=STRIP1_H < a.h.gcov
# Test full option names.
RUN: llvm-cov gcov --relative-only --source-prefix=/tmp abs-path.gcda | FileCheck %s --check-prefix=STRIP1 --match-full-lines --strict-whitespace
STRIP1:File 'c/abs-path.c'
STRIP1-NEXT:Lines executed:100.00% of 1
STRIP1-NEXT:Creating 'abs-path.c.gcov'
STRIP1-EMPTY:
STRIP1-NEXT:File 'h/a.h'
STRIP1-NEXT:Lines executed:0.00% of 1
STRIP1-NEXT:Creating 'a.h.gcov'
STRIP1_C: 0:Source:c/abs-path.c
STRIP1_H: 0:Source:h/a.h
RUN: llvm-cov gcov -r -s /tmp/h abs-path.gcda | FileCheck %s --check-prefix=STRIP2
STRIP2-NOT: File
STRIP2: File 'a.h'