.PHONY: lint lint-fix test test-cov test-all install-githooks

install-githooks:
	@cd .git/hooks; \
	ln -sf ../../.githooks/pre-push .; \
	ln -sf ../../.githooks/pre-commit .;

lint:
	uv run ruff check fastapi_request_context tests/ examples/
	uv run ruff format --check fastapi_request_context tests/ examples/
	uv run mypy fastapi_request_context tests/

lint-fix:
	uv run ruff format fastapi_request_context tests/ examples/
	uv run ruff check --fix fastapi_request_context tests/ examples/

test:
	uv run pytest tests/ -v

test-all:
	uv run tox

coverage:
	uv run coverage run -m pytest tests/
	uv run coverage report
	uv run coverage html
