1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
#!/usr/bin/env bash
################################################################################################################
##
## This script ensures that test file names match the required build tags, so that integration tests
## (which run for longer) can be run in a separate job from unit tests.
## - Integration test files (named *integration_*test.go) should have a '// +build integration'
## and '//go:build integration' build constraints
## - Unit test files (named *_test.go) should have a '// +build !integration' and '//go:build integration'
## build constraints
##
## Return value: 1 if any discrepancy is found, otherwise 0
##
################################################################################################################
set -o pipefail
GIT_ROOT=$(cd "${BASH_SOURCE%/*}" && git rev-parse --show-toplevel)
go run ${GIT_ROOT}/scripts/check-test-directives ${GIT_ROOT}
|