gen_lcov.sh 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. #!/bin/sh
  2. workspace=`pwd`
  3. EXTRACT="${workspace}/*/op/* ${workspace}/*/util/* ${workspace}/*/request/* ${workspace}/*/response/* ${workspace}/*/trsf/* ${workspace}/include/* ${workspace}/src/*"
  4. # clear
  5. rm UTReport -rf
  6. rm UTResport.tar
  7. mkdir -p build
  8. cd build
  9. cmake -DENABLE_COVERAGE=ON -DBUILD_UNITTEST=ON -DUSE_OPENSSL_MD5=ON ..
  10. gmake all -j 4
  11. # init
  12. cd ..
  13. lcov -d build -z
  14. lcov -d build -b . --no-external --initial -c -o sevenyou_init.info
  15. # run
  16. cd build/bin
  17. ./all-test
  18. #./async-op-test
  19. #./bucket-op-test
  20. #./live-channel-test
  21. #./object-op-test
  22. #./object-request-test
  23. #./object-response-test
  24. #./util-test
  25. # second
  26. cd ../..
  27. lcov -d build -b . --no-external -c -o sevenyou.info
  28. # filt
  29. lcov --extract sevenyou_init.info ${EXTRACT} -o sevenyou_init_filted.info
  30. lcov --extract sevenyou.info ${EXTRACT} -o sevenyou_filted.info
  31. lcov --remove sevenyou.info "${workspace}/third_party/*" -o sevenyou_rm_third_party.info
  32. rm sevenyou.info
  33. mv sevenyou_rm_third_party.info sevenyou.info
  34. # genhtml and zip
  35. genhtml -o UTReport --prefix=`pwd` sevenyou_init_filted.info sevenyou_filted.info
  36. tar -cvf UTReport.tar UTReport
  37. # rm sevenyou_init.info
  38. # rm sevenyou_init_filted.info
  39. # rm sevenyou.info
  40. # rm sevenyou_filted.info
  41. rm UTReport -rf