33 lines
700 B
Makefile
33 lines
700 B
Makefile
PACKAGES := . ./mocktracer/... ./ext/...
|
|
|
|
.DEFAULT_GOAL := test-and-lint
|
|
|
|
.PHONE: test-and-lint
|
|
|
|
test-and-lint: test lint
|
|
|
|
.PHONY: test
|
|
test:
|
|
go test -v -cover -race ./...
|
|
|
|
cover:
|
|
@rm -rf cover-all.out
|
|
$(foreach pkg, $(PACKAGES), $(MAKE) cover-pkg PKG=$(pkg) || true;)
|
|
@grep mode: cover.out > coverage.out
|
|
@cat cover-all.out >> coverage.out
|
|
go tool cover -html=coverage.out -o cover.html
|
|
@rm -rf cover.out cover-all.out coverage.out
|
|
|
|
cover-pkg:
|
|
go test -coverprofile cover.out $(PKG)
|
|
@grep -v mode: cover.out >> cover-all.out
|
|
|
|
.PHONY: lint
|
|
lint:
|
|
go fmt ./...
|
|
golint ./...
|
|
@# Run again with magic to exit non-zero if golint outputs anything.
|
|
@! (golint ./... | read dummy)
|
|
go vet ./...
|
|
|