|
|
@@ -66,16 +66,31 @@ case "${1:-default}" in
|
|
|
;;
|
|
|
|
|
|
test-cov)
|
|
|
+ go get github.com/axw/gocov/gocov
|
|
|
+ go get github.com/AlekSi/gocov-xml
|
|
|
+
|
|
|
echo "mode: set" > coverage.out
|
|
|
fail=0
|
|
|
|
|
|
+ # For every package in the repo
|
|
|
for dir in $(go list ./...) ; do
|
|
|
+ # run the tests
|
|
|
godep go test -coverprofile=profile.out $dir
|
|
|
if [ -f profile.out ] ; then
|
|
|
+ # and if there was test output, append it to coverage.out
|
|
|
grep -v "mode: set" profile.out >> coverage.out
|
|
|
rm profile.out
|
|
|
fi
|
|
|
done
|
|
|
+
|
|
|
+ gocov convert coverage.out | gocov-xml > coverage.xml
|
|
|
+
|
|
|
+ # This is usually run from within Jenkins. If it is, we need to
|
|
|
+ # tweak the paths in coverage.xml so cobertura finds the
|
|
|
+ # source.
|
|
|
+ if [[ "${WORKSPACE:-default}" != "default" ]] ; then
|
|
|
+ sed "s#$WORKSPACE##g" < coverage.xml > coverage.xml.new && mv coverage.xml.new coverage.xml
|
|
|
+ fi
|
|
|
;;
|
|
|
|
|
|
*)
|