Files
reddit-go/Makefile
T
2026-05-27 12:58:06 -05:00

42 lines
878 B
Makefile

ROOT_PKG ?= "git.the-red-comet.org/guy176251/go-reddit"
LIST_PKG := $(shell go list $(ROOT_PKG)/...)
# Tests
TEST_TIMEOUT ?= 20
.DEFAULT_GOAL := usage
# Print colorized log
define log
echo "[$(@)] $(1)"
endef
.PHONY: all
all: fmt vet test test-coverage
.PHONY: usage
usage:
@echo "make [all|fmt|vet|test|test-coverage]"
.PHONY: fmt
fmt:
@$(call log,"Running formatter")
@go fmt $(LIST_PKG)
.PHONY: vet
vet:
@$(call log,"Running vet")
@go vet -all $(LIST_PKG)
.PHONY: test
test: fmt vet
@$(call log,"Running tests")
@go test -v -race -short -timeout $(TEST_TIMEOUT)s $(ARGS) $(LIST_PKG)
.PHONY: test-coverage
test-coverage: fmt vet
@$(call log,"Running tests with coverage")
@go test -v -race -short -timeout $(TEST_TIMEOUT)s $(ARGS) -coverprofile=coverage.out $(LIST_PKG)
@go tool cover -func=coverage.out
@go tool cover -html=coverage.out -o coverage.html