]> git.immae.eu Git - github/fretlink/terraform-provider-statuscake.git/blob - vendor/google.golang.org/grpc/coverage.sh
Merge pull request #27 from terraform-providers/go-modules-2019-02-22
[github/fretlink/terraform-provider-statuscake.git] / vendor / google.golang.org / grpc / coverage.sh
1 #!/usr/bin/env bash
2
3
4 set -e
5
6 workdir=.cover
7 profile="$workdir/cover.out"
8 mode=set
9 end2endtest="google.golang.org/grpc/test"
10
11 generate_cover_data() {
12 rm -rf "$workdir"
13 mkdir "$workdir"
14
15 for pkg in "$@"; do
16 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" ]
17 then
18 f="$workdir/$(echo $pkg | tr / -)"
19 go test -covermode="$mode" -coverprofile="$f.cover" "$pkg"
20 go test -covermode="$mode" -coverpkg "$pkg" -coverprofile="$f.e2e.cover" "$end2endtest"
21 fi
22 done
23
24 echo "mode: $mode" >"$profile"
25 grep -h -v "^mode:" "$workdir"/*.cover >>"$profile"
26 }
27
28 show_cover_report() {
29 go tool cover -${1}="$profile"
30 }
31
32 push_to_coveralls() {
33 goveralls -coverprofile="$profile"
34 }
35
36 generate_cover_data $(go list ./...)
37 show_cover_report func
38 case "$1" in
39 "")
40 ;;
41 --html)
42 show_cover_report html ;;
43 --coveralls)
44 push_to_coveralls ;;
45 *)
46 echo >&2 "error: invalid option: $1" ;;
47 esac
48 rm -rf "$workdir"