milvus/core/coverage.sh
BossZou 0071905d5f
Remove blacklist index from VecIndex (#4239)
* Remove blacklist from VecIndex

Signed-off-by: Yhz <yinghao.zou@zilliz.com>

* Add blacklist in DeletedDoc

Signed-off-by: Yhz <yinghao.zou@zilliz.com>

* Remove blacklist from VecIndex and add to DeletedDOc

Signed-off-by: Yhz <yinghao.zou@zilliz.com>

* modify cmakelist

Signed-off-by: Yhz <yinghao.zou@zilliz.com>

* modify

Signed-off-by: Yhz <yinghao.zou@zilliz.com>

* Add default value in strcut VectorsData (fix #4242)

Signed-off-by: Yhz <yinghao.zou@zilliz.com>

* Add more default value

Signed-off-by: Yhz <yinghao.zou@zilliz.com>

* skip file which is not executable

Signed-off-by: Yhz <yinghao.zou@zilliz.com>

* codacy

Signed-off-by: Yhz <yinghao.zou@zilliz.com>
2020-11-18 02:55:10 +00:00

72 lines
1.6 KiB
Bash
Executable File

#!/bin/bash
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$(pwd)/milvus/lib
LCOV_CMD="lcov"
LCOV_GEN_CMD="genhtml"
BASE_INFO="milvus_base.info"
TEST_INFO="milvus_test.info"
TOTAL_INFO="milvus_total.info"
OUTPUT_INFO="milvus_output.info"
LCOV_OUTPUT_DIR="lcov_out"
GCNO_DIR="cmake_build"
UNITTEST_DIR="milvus/unittest"
# delete old code coverage info files
rm -rf ${LCOV_OUTPUT_DIR}
rm -f ${BASE_INFO} ${TEST_INFO} ${TOTAL_INFO} ${OUTPUT_INFO}
# get baseline
${LCOV_CMD} -c -i -d ${GCNO_DIR} -o "${BASE_INFO}"
if [ $? -ne 0 ]; then
echo "generate ${BASE_INFO} failed"
exit 1
fi
# run unittest
for test in `ls ${UNITTEST_DIR}`; do
if [[ ${test} == *".log" ]] || [[ ${test} == *".info" ]]; then
echo "skip file ${test}"
continue
fi
echo $test "running..."
# run unittest
./${UNITTEST_DIR}/${test}
if [ $? -ne 0 ]; then
echo ${UNITTEST_DIR}/${test} "run failed"
exit 1
fi
done
# gen code coverage
${LCOV_CMD} -c -d ${GCNO_DIR} -o "${TEST_INFO}"
if [ $? -ne 0 ]; then
echo "generate ${TEST_INFO} failed"
exit 1
fi
# merge coverage
${LCOV_CMD} -a ${BASE_INFO} -a ${TEST_INFO} -o "${TOTAL_INFO}"
if [ $? -ne 0 ]; then
echo "generate ${TOTAL_INFO} failed"
exit 1
fi
# remove third party from tracefiles
${LCOV_CMD} -r "${TOTAL_INFO}" -o "${OUTPUT_INFO}" \
"/usr/*" \
"*/cmake_build/*" \
"*/src/index/thirdparty*" \
"*/src/grpc*" \
"*/thirdparty/*"
if [ $? -ne 0 ]; then
echo "generate ${OUTPUT_INFO} failed"
exit 1
fi
# gen html report
${LCOV_GEN_CMD} "${OUTPUT_INFO}" --output-directory ${LCOV_OUTPUT_DIR}