48 lines
1.4 KiB
Makefile
48 lines
1.4 KiB
Makefile
.PHONY: help
|
|
help: ## List make targets
|
|
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'
|
|
|
|
.PHONY: format
|
|
format: ## Format source code
|
|
poetry run isort .
|
|
poetry run black .
|
|
|
|
.PHONY: lint
|
|
lint: ## Lint source code
|
|
poetry run flake8 src tests
|
|
|
|
.PHONY: test
|
|
test: ## Run tests
|
|
poetry run pytest --color=yes
|
|
|
|
.PHONY: test-live
|
|
test-live: ## Run live tests
|
|
tests/live.sh
|
|
|
|
.PHONY: coverage
|
|
coverage: ## Generate and open coverage report
|
|
poetry run coverage run --source=pricehist -m pytest
|
|
poetry run coverage html
|
|
xdg-open htmlcov/index.html
|
|
|
|
.PHONY: install-pre-commit-hook
|
|
install-pre-commit-hook: ## Install the git pre-commit hook
|
|
echo -e "#!/bin/bash\nmake pre-commit" > .git/hooks/pre-commit
|
|
chmod +x .git/hooks/pre-commit
|
|
|
|
.PHONY: pre-commit
|
|
pre-commit: ## Checks to run before each commit
|
|
poetry run isort src tests --check
|
|
poetry run black src tests --check
|
|
poetry run flake8 src tests
|
|
|
|
.PHONY: tox
|
|
tox: ## Run tests via tox
|
|
poetry run tox
|
|
|
|
.PHONY: fetch-iso-data
|
|
fetch-iso-data: ## Fetch the latest copy of the ISO 4217 currency data
|
|
wget -O src/pricehist/resources/list-one.xml \
|
|
https://www.six-group.com/dam/download/financial-information/data-center/iso-currrency/lists/list-one.xml
|
|
wget -O src/pricehist/resources/list-three.xml \
|
|
https://www.six-group.com/dam/download/financial-information/data-center/iso-currrency/lists/list-three.xml
|