Switch the unit test runner to pytest.

Review Request #11912 — Created Jan. 9, 2022 and submitted — Latest diff uploaded

Information

kgb
master

Reviewers

kgb

Historically, the kgb unit tests made use of nose as the test runner.
Unfortunately, nose 1.x is no longer maintained and is incompatible
with modern versions of Python 3. The forks are no better, and nose2
is a very different library.

This change moves the codebase over to pytest. This is a much more
modern test runner with a lot of interesting capabilities and a wide
ecosystem of plugins.

Developers can now run pytest directly to run the test suite. The old
./tests/runtests.py still works, but is deprecated, and merely wraps
pytest anyway.

Unit tests pass on all supported versions of Python.

Commits

Files