23 lines
542 B
Plaintext
23 lines
542 B
Plaintext
|
#!/bin/bash
|
||
|
set -euo pipefail
|
||
|
|
||
|
PROJECT="github.com/polydawn/refmt"
|
||
|
SUBSECTION=${1:-./...}
|
||
|
|
||
|
export GOPATH="$PWD/.gopath"
|
||
|
|
||
|
CoverPkg() {
|
||
|
pkg="$1"
|
||
|
|
||
|
coverFile="$GOPATH/tmp/$pkg.cover"
|
||
|
mkdir -p "$(dirname "$coverFile")"
|
||
|
rm -f "$coverFile"
|
||
|
go test -coverprofile="$coverFile" "$pkg" \
|
||
|
| tee /dev/stderr | grep "\[no test files\]$" > /dev/null || \
|
||
|
go tool cover -html="$coverFile"
|
||
|
}
|
||
|
|
||
|
for pkg in $(go list "$SUBSECTION" | sed "s#^_${PWD}#${PROJECT}#"); do
|
||
|
CoverPkg "$pkg" || true # continue even if errors from packages that lack tests.
|
||
|
done
|