#!/usr/bin/env bash # FROM: https://github.com/getlantern/flashlight-build/blob/devel/testandcover.bash function die() { echo $* exit 1 } export GOPATH=`pwd`:$GOPATH echo "mode: count" > coverage.txt ERROR="" for pkg in `cat testpackages.txt` do go test -v -covermode=count -coverprofile=profile_tmp.cov $pkg || ERROR="Error testing $pkg" tail -n +2 profile_tmp.cov >> coverage.txt || die "Unable to append coverage for $pkg" done if [ ! -z "$ERROR" ] then die "Encountered error, last error was: $ERROR" fi