.PHONY: install test lint format typecheck clean docker-build docker-run example docs

install:
	python -m pip install -e ".[dev]"

test:
	pytest -v

lint:
	ruff check src tests scripts

format:
	ruff format src tests scripts

format-check:
	ruff format --check src tests scripts

typecheck:
	mypy src

check: lint format-check typecheck test

clean:
	rm -rf build dist *.egg-info .pytest_cache .mypy_cache .ruff_cache src/benchmind/__pycache__ tests/__pycache__

docker-build:
	docker build -t benchmind:latest .

docker-run:
	docker run --rm -v "$(PWD)/examples:/app/examples:ro" -v "$(PWD)/output:/app/output" benchmind:latest generate examples/petstore.yaml --output output/petstore-load.js

example:
	benchmind generate examples/petstore.yaml --output examples/petstore-load.js --base-url https://petstore.example.com/v1

docs:
	@echo "Docs site not yet configured. See docs/ARCHITECTURE.md and README.md."
