| #!/bin/bash |
| # Copyright 2018 The Go Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style |
| # license that can be found in the LICENSE file. |
| |
| cd "$(git rev-parse --show-toplevel)" |
| |
| BOLD="\x1b[1mRunning: " |
| PASS="\x1b[32mPASS" |
| FAIL="\x1b[31mFAIL" |
| RESET="\x1b[0m" |
| |
| echo -e "${BOLD}go test ./...${RESET}" |
| RET_TEST0=$(go test ./... | egrep -v "^(ok|[?])\s+") |
| if [[ ! -z "$RET_TEST0" ]]; then echo "$RET_TEST0"; echo; fi |
| |
| echo -e "${BOLD}go test -tags purego ./...${RESET}" |
| RET_TEST1=$(go test -tags purego ./... | egrep -v "^(ok|[?])\s+") |
| if [[ ! -z "$RET_TEST1" ]]; then echo "$RET_TEST1"; echo; fi |
| |
| echo -e "${BOLD}go generate${RESET}" |
| RET_GEN=$(go run ./internal/cmd/generate-alias 2>&1) |
| if [[ ! -z "$RET_GEN" ]]; then echo "$RET_GEN"; echo; fi |
| |
| echo -e "${BOLD}go fmt${RESET}" |
| RET_FMT=$(gofmt -d $(git ls-files *.go) 2>&1) |
| if [[ ! -z "$RET_FMT" ]]; then echo "$RET_FMT"; echo; fi |
| |
| echo -e "${BOLD}git diff${RESET}" |
| RET_DIFF=$(git diff --no-prefix HEAD 2>&1) |
| if [[ ! -z "$RET_DIFF" ]]; then echo "$RET_DIFF"; echo; fi |
| |
| echo -e "${BOLD}git ls-files${RESET}" |
| RET_FILES=$(git ls-files --others --exclude-standard 2>&1) |
| if [[ ! -z "$RET_FILES" ]]; then echo "$RET_FILES"; echo; fi |
| |
| if [[ ! -z "$RET_TEST0" ]] || [[ ! -z "$RET_TEST1" ]] || [[ ! -z "$RET_GEN" ]] || [ ! -z "$RET_FMT" ] || [[ ! -z "$RET_DIFF" ]] || [[ ! -z "$RET_FILES" ]]; then |
| echo -e "${FAIL}${RESET}"; exit 1 |
| else |
| echo -e "${PASS}${RESET}"; exit 0 |
| fi |