#!/bin/bash set -e cd $(dirname $0)/.. echo Running tests PACKAGES=". $(find -name '*.go' | xargs -I{} dirname {} | cut -f2 -d/ | sort -u | grep -Ev '(^\.$|.git|.trash-cache|vendor|bin)' | sed -e 's!^!./!' -e 's!$!/...!')" go test -cover -tags=test ${PACKAGES} go generate if [ -n "$(git status --porcelain --untracked-files=no)" ]; then git status echo git out of sync with generated code exit 1 fi