31
GNUmakefile
31
GNUmakefile
@@ -29,6 +29,9 @@ GO_VET= $(GO_BASE) vet
|
|||||||
|
|
||||||
TEST_FLAGS?= -race -cover -coverprofile=coverage.out
|
TEST_FLAGS?= -race -cover -coverprofile=coverage.out
|
||||||
|
|
||||||
|
E2E_CONFIG ?= $(CURDIR)/e2e/console/testdata/config.yaml
|
||||||
|
E2E_COVER_DIR ?= $(CURDIR)/coverage/e2e
|
||||||
|
|
||||||
DOCKER_IMAGE_NAME= ghcr.io/getprobo/probo
|
DOCKER_IMAGE_NAME= ghcr.io/getprobo/probo
|
||||||
DOCKER_TAG_NAME?= latest
|
DOCKER_TAG_NAME?= latest
|
||||||
|
|
||||||
@@ -72,43 +75,29 @@ test-bench: TEST_FLAGS+=-bench=.
|
|||||||
test-bench: test ## Run benchmark tests
|
test-bench: test ## Run benchmark tests
|
||||||
|
|
||||||
.PHONY: test-e2e
|
.PHONY: test-e2e
|
||||||
test-e2e: E2E_CONFIG?=$(CURDIR)/e2e/console/testdata/config.yaml
|
test-e2e: bin/probod ## Run console e2e tests
|
||||||
test-e2e: CGO_ENABLED=1
|
PROBO_E2E_BINARY=$(CURDIR)/bin/probod \
|
||||||
test-e2e: ## Run console e2e tests
|
|
||||||
@echo "Building probod binary..."
|
|
||||||
CGO_ENABLED=0 $(GO) build $(LDFLAGS) $(GCFLAGS) -o bin/probod-e2e ./cmd/probod
|
|
||||||
@echo "Running e2e tests..."
|
|
||||||
PROBO_E2E_BINARY=$(CURDIR)/bin/probod-e2e \
|
|
||||||
PROBO_E2E_CONFIG=$(E2E_CONFIG) \
|
PROBO_E2E_CONFIG=$(E2E_CONFIG) \
|
||||||
CGO_ENABLED=1 $(GO) test -count=1 -v ./e2e/console/...
|
CGO_ENABLED=1 $(GO) test -count=1 -v ./e2e/console/...
|
||||||
|
|
||||||
|
bin/probod-coverage:
|
||||||
|
CGO_ENABLED=0 $(GO_BUILD) -cover -o $@ $(PROBOD_SRC)
|
||||||
|
|
||||||
.PHONY: test-e2e-coverage
|
.PHONY: test-e2e-coverage
|
||||||
test-e2e-coverage: E2E_COVER_DIR?=$(CURDIR)/coverage/e2e
|
test-e2e-coverage: bin/probod-coverage ## Run e2e tests with coverage
|
||||||
test-e2e-coverage: E2E_CONFIG?=$(CURDIR)/e2e/console/testdata/config.yaml
|
@$(RM) -rf $(E2E_COVER_DIR) && $(MKDIR) -p $(E2E_COVER_DIR)
|
||||||
test-e2e-coverage: CGO_ENABLED=1
|
|
||||||
test-e2e-coverage: ## Build coverage binary and run e2e tests with coverage
|
|
||||||
@echo "Building coverage-instrumented binary..."
|
|
||||||
CGO_ENABLED=0 $(GO) build $(LDFLAGS) $(GCFLAGS) -cover -o bin/probod-coverage ./cmd/probod
|
|
||||||
@$(RM) -rf $(E2E_COVER_DIR)
|
|
||||||
@$(MKDIR) -p $(E2E_COVER_DIR)
|
|
||||||
@echo "Running e2e tests with coverage..."
|
|
||||||
PROBO_E2E_BINARY=$(CURDIR)/bin/probod-coverage \
|
PROBO_E2E_BINARY=$(CURDIR)/bin/probod-coverage \
|
||||||
PROBO_E2E_COVERDIR=$(E2E_COVER_DIR) \
|
PROBO_E2E_COVERDIR=$(E2E_COVER_DIR) \
|
||||||
PROBO_E2E_CONFIG=$(E2E_CONFIG) \
|
PROBO_E2E_CONFIG=$(E2E_CONFIG) \
|
||||||
CGO_ENABLED=1 $(GO) test -count=1 -v ./e2e/console/...
|
CGO_ENABLED=1 $(GO) test -count=1 -v ./e2e/console/...
|
||||||
@echo "Generating coverage report..."
|
|
||||||
$(GO) tool covdata textfmt -i=$(E2E_COVER_DIR) -o=coverage-e2e.out
|
$(GO) tool covdata textfmt -i=$(E2E_COVER_DIR) -o=coverage-e2e.out
|
||||||
$(GO) tool cover -html=coverage-e2e.out -o=coverage-e2e.html
|
$(GO) tool cover -html=coverage-e2e.out -o=coverage-e2e.html
|
||||||
@echo "E2E coverage report generated: coverage-e2e.html"
|
|
||||||
|
|
||||||
.PHONY: coverage-combined
|
.PHONY: coverage-combined
|
||||||
coverage-combined: E2E_COVER_DIR?=./coverage/e2e
|
|
||||||
coverage-combined: coverage-report test-e2e-coverage ## Generate combined coverage report (unit + e2e)
|
coverage-combined: coverage-report test-e2e-coverage ## Generate combined coverage report (unit + e2e)
|
||||||
@echo "Merging coverage reports..."
|
|
||||||
@cat coverage.out > coverage-combined.out
|
@cat coverage.out > coverage-combined.out
|
||||||
@tail -n +2 coverage-e2e.out >> coverage-combined.out
|
@tail -n +2 coverage-e2e.out >> coverage-combined.out
|
||||||
$(GO) tool cover -html=coverage-combined.out -o=coverage-combined.html
|
$(GO) tool cover -html=coverage-combined.out -o=coverage-combined.html
|
||||||
@echo "Combined coverage report generated: coverage-combined.html"
|
|
||||||
|
|
||||||
.PHONY: build
|
.PHONY: build
|
||||||
build: @probo/emails @probo/console @probo/trust bin/probod
|
build: @probo/emails @probo/console @probo/trust bin/probod
|
||||||
|
|||||||
Reference in New Issue
Block a user