This PR introduces automatic testing and some conventions for third party developers contributing to LSD (like me).
Using tush, a simple means is provided to setup automated tests for LSD no window models.
In combination with github actions this allows to run, in future, comprehensive regression tests by simply executing LSD models, creating special output within these models and checking that this output remains stable throughout changes.
In addition, some guidelines on how to provide test models and ensure that new code is formatted in the same manner as the existing codebase is provided.
The goal of these features is to enable efficient and reliable contributions by other authors than the main maintainers of LSD, respecting the limited availabilty these maintainers have for code reviews and tests.
As a side-effect, the ongoing effort in introducing test models, until all deterministic functionality (user macros) is covered, will improve the confidence that users of LSD hold in the model, as well as reviewers of papers with models build in LSD.
This PR introduces automatic testing and some conventions for third party developers contributing to LSD (like me).
The goal of these features is to enable efficient and reliable contributions by other authors than the main maintainers of LSD, respecting the limited availabilty these maintainers have for code reviews and tests. As a side-effect, the ongoing effort in introducing test models, until all deterministic functionality (user macros) is covered, will improve the confidence that users of LSD hold in the model, as well as reviewers of papers with models build in LSD.