test: speedup and strengthen go vet checking

Was iterating over every file, reloading everything. Instead,
analyze the package directories. On my machine, the time for
vet checking goes from 34s to 3s. Scans more code too.
release-3.3
Anthony Romano 2017-06-03 19:28:01 -07:00
parent cdb722123a
commit 9b33aa1967
1 changed files with 7 additions and 11 deletions

18
test
View File

@ -222,17 +222,13 @@ function fmt_pass {
exit 255
fi
echo "Checking 'go tool vet -shadow'..."
for path in $FMT; do
if [ "${path##*.}" != "go" ]; then
path="${path}/*.go"
fi
vetRes=$(go tool vet -shadow ${path})
if [ -n "${vetRes}" ]; then
echo -e "govet -shadow checking ${path} failed:\n${vetRes}"
exit 255
fi
done
echo "Checking 'go tool vet -all -shadow'..."
fmtpkgs=$(echo $FMT | xargs dirname | sort | uniq | sed '/\./d')
vetRes=$(go tool vet -all -shadow ${fmtpkgs} 2>&1 | grep -v '/gw/' || true)
if [ -n "${vetRes}" ]; then
echo -e "govet -all -shadow checking failed:\n${vetRes}"
exit 255
fi
echo "Checking documentation style..."
# eschew you