#!/bin/bash set -e source "$(dirname "$BASH_SOURCE")/.build" find_dirs() { ( find . -not \( \ \( \ -path './vendor/*' \ \) -prune \ \) -name '*_test.go' -print0 | xargs -0n1 dirname | sed 's|^\./||' | sort -u ) } TEST_FLAGS=("${BUILD_FLAGS[@]}" -cover -coverprofile=cover.out) if [ -z "$TEST_DIRS" ]; then TEST_DIRS=$(find_dirs '*_test.go') fi TESTS_FAILED=() for dir in $TEST_DIRS; do go test "${TEST_FLAGS[@]}" "./${dir}" done