b41222d50e
Switch to pytest for running test as it has better fixtures then django has by default.
33 lines
796 B
Makefile
33 lines
796 B
Makefile
PYTHON>=python
|
|
PYTEST?=pytest
|
|
PYTEST_OPTIONS+=
|
|
PYTEST_INPUT?=.
|
|
PYTEST_COVERAGE_OPTIONS+=--cov-report=term-missing --cov-report=html:htmlcov --cov=.
|
|
PYTEST_PDB?=0
|
|
PYTEST_PDB_OPTIONS?=--pdb --pdbcls=IPython.terminal.debugger:TerminalPdb
|
|
|
|
|
|
ifeq (${PYTEST_PDB},1)
|
|
PYTEST_OPTIONS+= ${PYTEST_PDB_OPTIONS}
|
|
else
|
|
test-pdb: PYTEST_OPTIONS+= ${PYTEST_PDB_OPTIONS}
|
|
endif
|
|
test-pdb: test
|
|
|
|
|
|
.PHONY: test lint coverage
|
|
|
|
lint:
|
|
flake8 --extend-exclude "*/migrations/,local_settings.py" devel main mirrors news packages releng templates todolists visualize *.py
|
|
|
|
collectstatic:
|
|
python manage.py collectstatic --noinput
|
|
|
|
test: test-py
|
|
|
|
test-py coverage:
|
|
DJANGO_SETTINGS_MODULE=settings ${PYTEST} ${PYTEST_OPTIONS} ${PYTEST_COVERAGE_OPTIONS} ${PYTEST_INPUT}
|
|
|
|
open-coverage: coverage
|
|
${BROWSER} htmlcov/index.html
|