#! /bin/bash
|
|
|
|
# set glide.lock path
|
|
if [[ "$GLIDE" == "" ]]; then
|
|
GLIDE=$GOPATH/src/github.com/tendermint/tendermint/glide.lock
|
|
fi
|
|
|
|
# get vendored commit for given lib
|
|
function parseGlide() {
|
|
cat $1 | grep -A1 $2 | grep -v $2 | awk '{print $2}'
|
|
}
|
|
|
|
# fetch and checkout vendored dep
|
|
function getDep() {
|
|
lib=$1
|
|
echo "----------------------------------"
|
|
echo "Getting $lib ..."
|
|
go get -t github.com/tendermint/$lib/...
|
|
|
|
VENDORED=$(parseGlide $GLIDE $lib)
|
|
cd $GOPATH/src/github.com/tendermint/$lib
|
|
MASTER=$(git rev-parse origin/master)
|
|
|
|
if [[ "$VENDORED" != "$MASTER" ]]; then
|
|
echo "... VENDORED != MASTER ($VENDORED != $MASTER)"
|
|
echo "... Checking out commit $VENDORED"
|
|
git checkout $VENDORED &> /dev/null
|
|
fi
|
|
}
|
|
|
|
####################
|
|
# libs we depend on
|
|
####################
|
|
|
|
LIBS_GO_TEST=(go-clist go-common go-config go-crypto go-db go-events go-merkle go-p2p)
|
|
LIBS_MAKE_TEST=(go-rpc go-wire tmsp)
|
|
|
|
for lib in "${LIBS_GO_TEST[@]}"; do
|
|
getDep $lib
|
|
|
|
echo "Testing $lib ..."
|
|
go test --race github.com/tendermint/$lib/...
|
|
if [[ "$?" != 0 ]]; then
|
|
echo "FAIL"
|
|
exit 1
|
|
fi
|
|
done
|
|
|
|
|
|
for lib in "${LIBS_MAKE_TEST[@]}"; do
|
|
getDep $lib
|
|
|
|
echo "Testing $lib ..."
|
|
cd $GOPATH/src/github.com/tendermint/$lib
|
|
make test
|
|
if [[ "$?" != 0 ]]; then
|
|
echo "FAIL"
|
|
exit 1
|
|
fi
|
|
done
|
|
|
|
echo ""
|
|
echo "PASS"
|