mirror of
https://github.com/3ybactuk/marketplace-go-service-project.git
synced 2025-10-30 14:03:45 +03:00
29 lines
744 B
Makefile
29 lines
744 B
Makefile
COV_REPORT_DIR := .coverage
|
|
|
|
define coverage
|
|
@if [ -f "$(1)/go.mod" ]; then \
|
|
echo "===== coverage for $(1) ====="; \
|
|
outdir=$(COV_REPORT_DIR)/$(1); \
|
|
mkdir -p $$outdir; \
|
|
pkgs=$$(go list ./$(1)/... | grep -vE 'mock|config|generated|header|document|internal/pb'); \
|
|
if [ -z "$$pkgs" ]; then \
|
|
echo "no packages to test in $(1)"; exit 0; \
|
|
fi; \
|
|
go test -race -covermode=atomic -coverprofile=$$outdir/coverage.out $$pkgs; \
|
|
go tool cover -html=$$outdir/coverage.out -o $$outdir/coverage.html; \
|
|
echo "html report: $$outdir/coverage.html"; \
|
|
fi
|
|
endef
|
|
|
|
cart-coverage:
|
|
$(call coverage,cart)
|
|
|
|
loms-coverage:
|
|
$(call coverage,loms)
|
|
|
|
notifier-coverage:
|
|
$(call coverage,notifier)
|
|
|
|
comments-coverage:
|
|
$(call coverage,comments)
|