DATAROOTDIR?=$(PREFIX)/share
MANDIR?=$(DATAROOTDIR)/man
-# default nose2 command
-NOSE2?=nose2 -N 4 --verbose
+# default python test command
+PYTEST?=pytest --verbose
SOX=sox
test_python: export PYTHONPATH=$(PYDESTDIR)/$(LIBDIR)
test_python: local_dylib
# run test with installed package
- # ./python/tests/run_all_tests --verbose
- # run with nose2, multiple processes
- $(NOSE2)
+ $(PYTEST)
clean_python:
./setup.py clean
# build and test python
pip install -v -e .
# run tests, with python coverage
- coverage run `which nose2`
+ coverage run `which pytest`
# capture coverage again
lcov $(LCOVOPTS) --capture --no-external --directory . \
--output-file build/coverage_python.info
lcov $(LCOVOPTS) -a build/coverage_python.info -a build/coverage_lib.info \
--output-file build/coverage.info
# remove tests
- lcov $(LCOVOPTS) --remove build/coverage.info '*/tests/*' '*/ooura_fft8g*' \
+ lcov $(LCOVOPTS) --remove build/coverage.info '*/ooura_fft8g*' \
--output-file build/coverage_lib.info
# make sure we don't build the doc, which builds a temporary python module
coverage_report: export WAFOPTS += --disable-docs
coverage_report: coverage
- # create coverage report dir
- mkdir -p build/coverage/
# generate report with lcov's genhtml
- genhtml build/coverage_lib.info --output-directory build/coverage/lcov \
+ genhtml build/coverage_lib.info --output-directory build/coverage_c \
--branch-coverage --highlight --legend
# generate python report with coverage python package
coverage report
- coverage html -d build/coverage/coverage
+ coverage html -d build/coverage_python
# show links to generated reports
- for i in $$(ls build/coverage/*/index.html); do echo file://$(PWD)/$$i; done
+ for i in $$(ls build/coverage_*/index.html); do echo file://$(PWD)/$$i; done
sphinx: configure
$(WAFCMD) sphinx $(WAFOPTS)