Official Go implementation of the Ethereum protocol
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
#!/bin/bash
|
|
|
|
|
|
|
|
# This script runs all package tests and merges the resulting coverage
|
|
|
|
# profiles. Coverage is accounted per package under test.
|
|
|
|
|
|
|
|
set -e
|
|
|
|
|
|
|
|
if [ ! -f "build/env.sh" ]; then
|
|
|
|
echo "$0 must be run from the root of the repository."
|
|
|
|
exit 2
|
|
|
|
fi
|
|
|
|
|
|
|
|
echo "mode: count" > profile.cov
|
|
|
|
|
|
|
|
for pkg in $(go list ./...); do
|
|
|
|
# drop the namespace prefix.
|
|
|
|
dir=${pkg##github.com/ethereum/go-ethereum/}
|
|
|
|
|
|
|
|
if [[ $dir != "tests" ]]; then
|
|
|
|
go test -covermode=count -coverprofile=$dir/profile.tmp $pkg
|
|
|
|
fi
|
|
|
|
if [[ -f $dir/profile.tmp ]]; then
|
|
|
|
tail -n +2 $dir/profile.tmp >> profile.cov
|
|
|
|
rm $dir/profile.tmp
|
|
|
|
fi
|
|
|
|
done
|