Add some coverage commands
continuous-integration/drone/push Build is passing Details

main
Drew Bednar 3 months ago
parent b18003ed20
commit 57584c2623

@ -1,4 +1,5 @@
SQL_DATABASE?=./ratchet.db
COVER_PROFILE?=./tmp/profile.out
# TODO maybe only use -race in an ARG for CI
FLAGS := -race -v
@ -11,34 +12,50 @@ endif
# make test ARGS=no-cache
test:
go test $(FLAGS) ./...
PHONEY: test
.PHONY: test
test-short:
go test -short $(FLAGS) ./...
PHONEY: test-short
.PHONY: test-short
# make test-int ARGS=no-cache
test-int:
go test $(FLAGS) ./cmd/...
.PHONY: test-int
cover-html: test-cover
go tool cover -html=$(COVER_PROFILE)
.PHONY:cover-html
coverage: test-cover
go tool cover -func=$(COVER_PROFILE)
.PHONY: coverage
test-cover:
go test -coverprofile=$(COVER_PROFILE) $(FLAGS) ./...
.PHONY: test-cover
serve:
go run ./cmd/ratchetd/main.go
PHONEY: serve
.PHONY: serve
# SQLite Commands
sql-cli:
sqlite3 $(SQL_DATABASE) -cmd ".headers on" -cmd ".mode box" -cmd ".tables"
.PHONY: sql-cli
init-db: run-migrate
sqlite3 $(SQL_DATABASE) "PRAGMA journal_mode = WAL; PRAGMA synchronous = NORMAL;"
.PHONY: init-db
seed-db:
sqlite3 $(SQL_DATABASE) "INSERT INTO snippets (title, content, expires_at) VALUES ('placeholder', 'placeholder content', datetime('now', '+6 months'));"
.PHONY: seed-db
run-migrate:
migrate -database sqlite3://$(SQL_DATABASE) -path ./migrations up
.PHONY: run-migrate
# Checks system dependencies needed to run the local dev environment
check-system-deps:
@ -47,8 +64,9 @@ check-system-deps:
@command -v sqlite3 > /dev/null || (echo "Missing sqlite3 command. brew install sqlite"; exit 1)
@command -v migrate > /dev/null || (echo "Missing migrate command. go install -tags 'sqlite3' github.com/golang-migrate/migrate/v4/cmd/migrate@latest"; exit 1)
@echo "System dependencies fulfilled 👍"
.PHONY: check-system-deps
# Certs
local-certs:
cd ./tls && go run /usr/local/go/src/crypto/tls/generate_cert.go --rsa-bits=2048 --host=localhost
.PHONY: local-certs
Loading…
Cancel
Save