Switch the unit test runner to pytest.
Review Request #11912 — Created Jan. 9, 2022 and submitted
Historically, the kgb unit tests made use of
noseas the test runner.
nose1.x is no longer maintained and is incompatible
with modern versions of Python 3. The forks are no better, and
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
pytestdirectly to run the test suite. The old
./tests/runtests.pystill works, but is deprecated, and merely wraps
Unit tests pass on all supported versions of Python.