1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
#!/bin/bash -ex
ext=".coverprofile"
# Clean existing coverage files.
find . -name '*'${ext} | xargs rm -f
# Unit test coverage.
go test -covermode=count -coverprofile=unittests${ext} ./...
# Integration test coverage.
coverprofiles=()
for main in $(find . -name 'asm.go'); do
dir=$(dirname ${main})
name=$(basename ${dir})
coverprofile="${dir}/${name}${ext}"
./script/covermain ${main} ${coverprofile} > /dev/null
coverprofiles+=(${coverprofile})
done
covertool merge --output integration${ext} ${coverprofiles[@]}
# Merge.
covertool merge --output all${ext} unittests${ext} integration${ext}
|