Building & Testing
To pass extra arguments to pytest you can set “PYTEST_ADDOPTS”:
# don't hide stdout
export PYTEST_ADDOPTS="-s"
python3 setup.py test
Using Setuptools
# Build in-tree
python3 setup.py build_ext --inplace
# Build in-tree including tests
python3 setup.py build_tests
# Executing some code after the build
PYTHONPATH=. python3 foo.py
# Running tests
python3 setup.py test
# To test only a specific file/class/function::
TEST_NAMES=test_gi python3 python3 setup.py test
TEST_NAMES=test_gi.TestUtf8 python3 setup.py test
TEST_NAMES=test_gi.TestUtf8.test_utf8_full_return python3 setup.py test
# To display stdout and pytest verbose output:
PYGI_TEST_VERBOSE=yes python3 setup.py test
# or:
python3 setup.py test -s
# using pytest directly
py.test-3 tests/test_gi.py
# Running flake8 tests
python3 setup.py quality
# Run under gdb
python3 setup.py test --gdb
# Run under valgrind
python3 setup.py test --valgrind --valgrind-log-file=valgrind.log
# Create a release tarball for GNOME
python3 setup.py sdist_gnome