Regression Testing
Since projects like these contain many moving parts, we prefer to use regression testing to ensure that changes don't break existing functionality. Regression testing is built into our CI (build statuses are shown above), with tests occuring on both changes to master
and the publication of new releases before their builds are pushed for distribution.
Note that it's normal for the build status of master
(at the HEAD of the branch) to be failing on occasion, due to the staged application of certain changes. Most of the time our CI will prevent these failed builds from replacing preview
images, but we may override that on occasion.
Contributors SHOULD run the test suite locally before committing changes, to ensure that all bases are covered. The test suite can be fully self-contained in the pdm development environment, and can therefore be ran without any additional local dependencies.
Running unit tests
Contributors that have installed the development environment via pdm install -G:all
as described in the Advanced Install guide can run the test suite one of two ways: