We use black to format the LAVA source code.
The GitLab CI will run black on every merge request.
You can run it locally:
apt-get install black black lava/
We use pytest for the python test harness.
To run the full test suite:
python3 -m pytest -v tests/
You can execute every tests that are defined in a given file:
python3 -m pytest -v tests/lava_dispatcher/test_utils.py
You can also execute a specific test:
python3 -m pytest -v tests/lava_dispatcher/test_utils.py::test_simple_clone
We use pylint and bandit for static analysis.
You can run them locally:
.gitlab-ci/analyze/pylint.sh bandit -r .
If you change the device or job schemas, you will have to ensure that the device and job schemas are valid.
This is checked by: