[dali_1.4.44] Merge branch 'devel/master'
[platform/core/uifw/dali-toolkit.git] / automated-tests / coverage.sh
1 #!/bin/bash
2
3 opt_genhtml=true
4 if [ $1 == -n ] ; then
5   opt_genhtml=false
6 fi
7
8 BUILD_DIR_NAME=tizen
9 function MakeCovData()
10 {
11     (  cd ../build/$BUILD_DIR_NAME ; make cov_data )
12 }
13
14 MakeCovData
15 if [[ $? -ne 0 ]]
16 then
17     BUILD_DIR_NAME=tizen-cmake
18     MakeCovData
19 fi
20
21 # From lcov version 1.10 onwards, branch coverage is off by default and earlier versions do not support the rc option
22 LCOV_OPTS=`if [ \`printf "\\\`lcov --version | cut -d' ' -f4\\\`\n1.10\n" | sort -V | head -n 1\` = 1.10 ] ; then echo "--rc lcov_branch_coverage=1" ; fi`
23
24 for i in `find . -name "*.dir"` ; do
25     (
26         cd $i
27         echo `pwd`
28         covs=( `ls *.gcda 2>/dev/null` )
29         if [[ $? -eq 0 ]]
30         then
31             lcov $LCOV_OPTS --directory . -c -o dali.info
32             lcov $LCOV_OPTS --remove dali.info "/usr/include/*" "*/automated-tests/*" "*/dali-env/*" -o dali.info
33             if [ ! -s dali.info ]
34             then
35               rm -f dali.info
36             fi
37         fi
38     )
39 done
40
41 (
42     if [ $opt_genhtml == true ] ; then
43         cd .. ;
44         genhtml $LCOV_OPTS -o build/$BUILD_DIR_NAME/doc/coverage `find . -name dali.info`
45         echo "Coverage output: ../build/$BUILD_DIR_NAME/doc/coverage/index.html"
46     fi
47 )