diff --git a/coverage.bash b/coverage.bash new file mode 100755 index 0000000..e2f3f97 --- /dev/null +++ b/coverage.bash @@ -0,0 +1,40 @@ +#!/usr/bin/env bash + +# This script runs the cover tool on all packages with test files. If you set +# an "HTML" environment variable, it will additionally open the web-based +# coverage visualizer for each package. + +function go_files { find . -name '*_test.go' ; } +function filter { grep -v '/_' ; } +function remove_relative_prefix { sed -e 's/^\.\///g' ; } + +function directories { + go_files | filter | remove_relative_prefix | while read f + do + dirname $f + done +} + +function unique_directories { directories | sort | uniq ; } + +function package_names { + unique_directories | while read d + do + echo github.com/go-kit/kit/$d + done +} + +function report { + package_names | while read pkg + do + go test -coverprofile=cover.out $pkg + if [ -n "${HTML+x}" ] + then + go tool cover -html=cover.out + fi + done + rm cover.out +} + +report + diff --git a/update_deps.bash b/update_deps.bash index 0d0d528..da9ba5f 100755 --- a/update_deps.bash +++ b/update_deps.bash @@ -17,7 +17,8 @@ } function go_get_update { - while read d ; do + while read d + do echo $d go get -u $d done