| TEST_TARGETS = | |
| ITEST_TARGETS = -m integration | |
| UTEST_TARGETS = -m "not(integration)" | |
| DEBUG= | |
| all: _tests | |
| integration: | |
| $(eval TEST_TARGETS := $(ITEST_TARGETS)) | |
| unit: | |
| $(eval TEST_TARGETS := $(UTEST_TARGETS)) | |
| utests: test | |
| utest: test | |
| tests: test | |
| test: unit _tests | |
| itests: itest | |
| itest: integration _tests | |
| _tests: py_env | |
| bash -c 'source py_env/bin/activate && py.test tests $(TEST_TARGETS) $(DEBUG)' | |
| ucoverage: unit coverage | |
| icoverage: integration coverage | |
| coverage: py_env | |
| bash -c 'source py_env/bin/activate && \ | |
| coverage erase && \ | |
| coverage run `which py.test` tests $(TEST_TARGETS) && \ | |
| coverage report -m' | |
| py_env: requirements.txt setup.py | |
| rm -rf py_env | |
| virtualenv py_env | |
| bash -c 'source py_env/bin/activate && pip install -r requirements.txt' | |
| clean: | |
| rm -rf py_env |