From 0a0f2dc8143e4ebe804e4bd4107b4817337c8212 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Ivan=20Vagin/AI=20Tools=20Lab=20/SRR/Engineer/=EC=82=BC?= =?utf8?q?=EC=84=B1=EC=A0=84=EC=9E=90?= Date: Thu, 19 Jul 2018 17:12:30 +0300 Subject: [PATCH] Include in coverage info files not covered by tests (#690) Include in coverage info files not covered by tests Signed-off-by: Ivan Vagin --- scripts/command/gen-coverage-report | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/scripts/command/gen-coverage-report b/scripts/command/gen-coverage-report index 74c3be2..82e0861 100644 --- a/scripts/command/gen-coverage-report +++ b/scripts/command/gen-coverage-report @@ -27,6 +27,8 @@ fi mkdir -p "${OUTPUT_PATH}" +RAW_BASE_COVERAGE_INFO_PATH="${OUTPUT_PATH}/coverage.base.raw.info" +RAW_TEST_COVERAGE_INFO_PATH="${OUTPUT_PATH}/coverage.test.raw.info" RAW_COVERAGE_INFO_PATH="${OUTPUT_PATH}/coverage.raw.info" EXTRACTED_COVERAGE_INFO_PATH="${OUTPUT_PATH}/coverage.extracted.info" EXCLUDED_COVERAGE_INFO_PATH="${OUTPUT_PATH}/coverage.excluded.info" @@ -39,12 +41,27 @@ do CANDIDATES+=("${NNCC_PROJECT_PATH}/${CANDIDATE}/*") done -"${LCOV_PATH}" -c -d "${BUILD_WORKSPACE_PATH}" -o "${RAW_COVERAGE_INFO_PATH}" +# Capture initial zero coverage data +"${LCOV_PATH}" -c -i -d "${BUILD_WORKSPACE_PATH}" -o "${RAW_BASE_COVERAGE_INFO_PATH}" + +# Capture tests coverage data +"${LCOV_PATH}" -c -d "${BUILD_WORKSPACE_PATH}" -o "${RAW_TEST_COVERAGE_INFO_PATH}" + +# Append zero coverage data and tests coverage data +"${LCOV_PATH}" -o "${RAW_COVERAGE_INFO_PATH}" \ + -a "${RAW_BASE_COVERAGE_INFO_PATH}" \ + -a "${RAW_TEST_COVERAGE_INFO_PATH}" + +# Extract data for particular pathes "${LCOV_PATH}" -e "${RAW_COVERAGE_INFO_PATH}" -o "${EXTRACTED_COVERAGE_INFO_PATH}" \ "${CANDIDATES[@]}" \ "${NNCC_PROJECT_PATH}"'/libs/*' "${NNCC_PROJECT_PATH}"'/tools/*' + +# Exclude *.test.cpp files from coverage report "${LCOV_PATH}" -r "${EXTRACTED_COVERAGE_INFO_PATH}" -o "${EXCLUDED_COVERAGE_INFO_PATH}" \ '*.test.cpp' + +# Gen html "${GENHTML_PATH}" "${EXCLUDED_COVERAGE_INFO_PATH}" \ --prefix "${NNCC_PROJECT_PATH}" \ --output-directory "${HTML_PATH}" -- 2.7.4