Skip to content

Commit a732119

Browse files
committed
Enable branch-level code coverage
Helps to check the test coverage for various complex conditions in the decompression code.
1 parent 62b6bc5 commit a732119

File tree

1 file changed

+11
-9
lines changed

1 file changed

+11
-9
lines changed

Diff for: codecov/CMakeLists.txt

+11-9
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ else()
5656
OUTPUT ${OUTPUT_FILE}.base
5757
COMMENT "Generating code coverage base file"
5858
COMMAND
59-
${LCOV} --capture --initial # Initial run
59+
${LCOV} --rc lcov_branch_coverage=1 --capture --initial # Initial run
6060
--no-external # Do not include external source files
6161
--base-directory ${CMAKE_SOURCE_DIR} --directory ${CMAKE_BINARY_DIR}
6262
--output-file ${OUTPUT_FILE}.base --gcov-tool
@@ -74,9 +74,10 @@ else()
7474
OUTPUT ${OUTPUT_FILE}.test
7575
COMMENT "Generating code coverage test file"
7676
COMMAND
77-
${LCOV} --capture --no-external --base-directory ${CMAKE_SOURCE_DIR}
78-
--directory ${CMAKE_BINARY_DIR} --output-file ${OUTPUT_FILE}.test
79-
--gcov-tool ${CMAKE_CURRENT_BINARY_DIR}/gcov
77+
${LCOV} --rc lcov_branch_coverage=1 --capture --no-external
78+
--base-directory ${CMAKE_SOURCE_DIR} --directory ${CMAKE_BINARY_DIR}
79+
--output-file ${OUTPUT_FILE}.test --gcov-tool
80+
${CMAKE_CURRENT_BINARY_DIR}/gcov
8081
DEPENDS ${OUTPUT_FILE}.base coverage_base)
8182

8283
# Make sure coverage_test runs after tests (installcheck) finish
@@ -89,9 +90,9 @@ else()
8990
OUTPUT ${OUTPUT_FILE}
9091
COMMENT "Generating final code coverage file"
9192
COMMAND
92-
${LCOV} --add-tracefile ${OUTPUT_FILE}.base --add-tracefile
93-
${OUTPUT_FILE}.test --output-file ${OUTPUT_FILE} --gcov-tool
94-
${CMAKE_CURRENT_BINARY_DIR}/gcov
93+
${LCOV} --rc lcov_branch_coverage=1 --add-tracefile ${OUTPUT_FILE}.base
94+
--add-tracefile ${OUTPUT_FILE}.test --output-file ${OUTPUT_FILE}
95+
--gcov-tool ${CMAKE_CURRENT_BINARY_DIR}/gcov
9596
DEPENDS ${OUTPUT_FILE}.test coverage_test)
9697

9798
add_custom_target(coverage_final DEPENDS ${OUTPUT_FILE})
@@ -114,8 +115,9 @@ else()
114115
COMMENT
115116
"Generating HTML code coverage report in ${CMAKE_CURRENT_BINARY_DIR}/${REPORT_DIR}"
116117
COMMAND
117-
${GENHTML} --prefix ${CMAKE_SOURCE_DIR} --ignore-errors source --legend
118-
--title "TimescaleDB" --output-directory ${REPORT_DIR} ${OUTPUT_FILE}
118+
${GENHTML} --prefix ${CMAKE_SOURCE_DIR} --branch-coverage
119+
--ignore-errors source --legend --title "TimescaleDB" --output-directory
120+
${REPORT_DIR} ${OUTPUT_FILE}
119121
DEPENDS ${OUTPUT_FILE})
120122
add_custom_target(coverage DEPENDS ${REPORT_DIR}/index.html)
121123
add_dependencies(coverage coverage_final)

0 commit comments

Comments
 (0)