## check Quick run of all regression tests,
## only with the default python
.PHONY: check
-check: devel/pytest
- devel/pytest/bin/flake8 .
+check: devel/pytest run-linters
devel/pytest/bin/py.test --cov=${PGWUI_COMPONENT} tests
## check-unit Quick run of unit regression tests,
## only with the default python
.PHONY: check-unit
-check-unit: devel/pytest
- devel/pytest/bin/flake8 .
+check-unit: devel/pytest run-linters
devel/pytest/bin/py.test -m unittest --cov=${PGWUI_COMPONENT} tests
## check-integration Quick run of integration regression tests,
## only with the default python
.PHONY: check-integration
-check-integration: devel/pytest
- devel/pytest/bin/flake8 .
+check-integration: devel/pytest run-linters
devel/pytest/bin/py.test -m integrationtest \
--cov=${PGWUI_COMPONENT} tests
## FILE=test_mymodule.py TEST=test_somefunction \
## make check-debug
.PHONY: check-debug
-check-debug: devel/pytest
- devel/pytest/bin/flake8 .
+check-debug: devel/pytest run-linters
devel/pytest/bin/py.test --trace tests/${FILE}::${TEST}
## pudb Run the python pudb debugger
# Development related targets
+# Run linters
+.PHONY: run-linters
+run-linters: devel/pytest
+ devel/pytest/bin/flake8 .
+ [ -e .yamllint.yaml ] && devel/pytest/bin/yamllint --strict .
+
# Re-create development environment when build environment changes
devel: setup.py pyproject.toml MANIFEST.in
rm -rf devel ${TOX_STUFF}
- mkdir devel
+ mkdir -p devel
# virtualenv for package building
devel/buildenv: devel
devel/testenv/bin/pip install -e '.[test]' ; \
)
-# virtualenv for pytest
+# virtualenv for pytest and other code tests
devel/pytest: devel dist
if [ ! -d devel/pytest ] ; then \
( ${VIRTUALENV} devel/pytest ; \
devel/pytest/bin/pip install --upgrade wheel ; \
devel/pytest/bin/pip install dist/${PGWUI_COMPONENT}-*.tar.gz ; \
devel/pytest/bin/pip install flake8 ; \
+ [ -e .yamllint.yaml ] && devel/pytest/bin/pip install yamllint ; \
devel/pytest/bin/pip install pytest-cov ; \
devel/pytest/bin/pip install -e '.[test]' ; \
) \