github.com/blixtra/rkt@v0.8.1-0.20160204105720-ab0d1add1a43/Godeps/_workspace/src/google.golang.org/grpc/coverage.sh (about) 1 #!/bin/bash 2 3 set -e 4 5 workdir=.cover 6 profile="$workdir/cover.out" 7 mode=set 8 end2endtest="google.golang.org/grpc/test" 9 10 generate_cover_data() { 11 rm -rf "$workdir" 12 mkdir "$workdir" 13 14 for pkg in "$@"; do 15 if [ $pkg == "google.golang.org/grpc" -o $pkg == "google.golang.org/grpc/transport" -o $pkg == "google.golang.org/grpc/metadata" -o $pkg == "google.golang.org/grpc/credentials" ] 16 then 17 f="$workdir/$(echo $pkg | tr / -)" 18 go test -covermode="$mode" -coverprofile="$f.cover" "$pkg" 19 go test -covermode="$mode" -coverpkg "$pkg" -coverprofile="$f.e2e.cover" "$end2endtest" 20 fi 21 done 22 23 echo "mode: $mode" >"$profile" 24 grep -h -v "^mode:" "$workdir"/*.cover >>"$profile" 25 } 26 27 show_cover_report() { 28 go tool cover -${1}="$profile" 29 } 30 31 push_to_coveralls() { 32 goveralls -coverprofile="$profile" 33 } 34 35 generate_cover_data $(go list ./...) 36 show_cover_report func 37 case "$1" in 38 "") 39 ;; 40 --html) 41 show_cover_report html ;; 42 --coveralls) 43 push_to_coveralls ;; 44 *) 45 echo >&2 "error: invalid option: $1" ;; 46 esac 47 rm -rf "$workdir"