2016-12-08 11:17:42 +01:00
|
|
|
TEST?=$$(go list ./... | grep -v '/go-datadog-api/vendor/')
|
2016-02-07 23:16:07 +01:00
|
|
|
VETARGS?=-asmdecl -atomic -bool -buildtags -copylocks -methods -nilfunc -printf -rangeloops -shift -structtags -unsafeptr
|
2016-12-08 11:17:42 +01:00
|
|
|
GOFMT_FILES?=$$(find . -name '*.go' | grep -v vendor)
|
2016-02-07 23:16:07 +01:00
|
|
|
|
2016-12-08 11:17:42 +01:00
|
|
|
default: test fmt
|
2016-02-07 23:16:07 +01:00
|
|
|
|
|
|
|
# test runs the unit tests and vets the code
|
|
|
|
test:
|
|
|
|
go test . $(TESTARGS) -v -timeout=30s -parallel=4
|
|
|
|
@$(MAKE) vet
|
|
|
|
|
|
|
|
# testacc runs acceptance tests
|
|
|
|
testacc:
|
|
|
|
go test integration/* -v $(TESTARGS) -timeout 90m
|
|
|
|
|
|
|
|
# testrace runs the race checker
|
|
|
|
testrace:
|
|
|
|
go test -race $(TEST) $(TESTARGS)
|
|
|
|
|
2016-12-08 11:17:42 +01:00
|
|
|
fmt:
|
|
|
|
gofmt -w $(GOFMT_FILES)
|
|
|
|
|
2016-02-07 23:16:07 +01:00
|
|
|
# vet runs the Go source code static analysis tool `vet` to find
|
|
|
|
# any common errors.
|
|
|
|
vet:
|
|
|
|
@go tool vet 2>/dev/null ; if [ $$? -eq 3 ]; then \
|
|
|
|
go get golang.org/x/tools/cmd/vet; \
|
|
|
|
fi
|
2016-12-08 11:17:42 +01:00
|
|
|
@echo "go tool vet $(VETARGS)"
|
|
|
|
@go tool vet $(VETARGS) $$(ls -d */ | grep -v vendor) ; if [ $$? -eq 1 ]; then \
|
2016-02-07 23:16:07 +01:00
|
|
|
echo ""; \
|
|
|
|
echo "Vet found suspicious constructs. Please check the reported constructs"; \
|
|
|
|
echo "and fix them if necessary before submitting the code for review."; \
|
|
|
|
exit 1; \
|
|
|
|
fi
|
|
|
|
|
|
|
|
.PHONY: default test testacc updatedeps vet
|