| # General | |
| WORKDIR = $(PWD) | |
| # Go parameters | |
| GOCMD = go | |
| GOTEST = $(GOCMD) test -v | |
| # Coverage | |
| COVERAGE_REPORT = coverage.txt | |
| COVERAGE_PROFILE = profile.out | |
| COVERAGE_MODE = atomic | |
| test-coverage: | |
| cd $(WORKDIR); \ | |
| echo "" > $(COVERAGE_REPORT); \ | |
| for dir in `find . -name "*.go" | grep -o '.*/' | sort | uniq`; do \ | |
| $(GOTEST) $$dir -coverprofile=$(COVERAGE_PROFILE) -covermode=$(COVERAGE_MODE); \ | |
| if [ $$? != 0 ]; then \ | |
| exit 2; \ | |
| fi; \ | |
| if [ -f $(COVERAGE_PROFILE) ]; then \ | |
| cat $(COVERAGE_PROFILE) >> $(COVERAGE_REPORT); \ | |
| rm $(COVERAGE_PROFILE); \ | |
| fi; \ | |
| done; \ |