.PHONY: test lint lint-fix up down up-test down-test migrate migration

test:
	uv run --extra dev pytest tests/ -v --cov=src/streamstack --cov-report=term-missing

lint:
	uv run --extra lint ruff check src/ tests/
	uv run --extra lint ruff format --check src/ tests/

lint-fix:
	uv run --extra lint ruff check --fix src/ tests/
	uv run --extra lint ruff format src/ tests/

up:
	docker compose up -d --build

down:
	docker compose down -v

up-test:
	docker compose -f docker-compose.test.yml up --build --abort-on-container-exit

down-test:
	docker compose -f docker-compose.test.yml down -v

migrate:
	uv run alembic upgrade head

migration:
	uv run alembic revision --autogenerate -m "$(MSG)"
