Files
avo/script/coverage
2019-01-09 21:58:14 -08:00

25 lines
604 B
Bash
Executable File

#!/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}