Тестирование

Тестирование осуществляется автоматически с помощью pytest библиотеки:

  • Тестируется всё, что:

    • Находится в ./tests.

    • Начинается на test_ и заканчивается на .py.

    • Содержит функции, начинающиеся на test_ (такие функции должны отваливаться при плохом поведении через assert или что-то еще).

  • Зависимости описаны в pyproject.toml в разделе test.

  • Команды для установки и запуска перечислены в Makefile:

    • make install-test - установка зависимостей.

    • make test - тестирование всего, что находится в ./tests.

    • make test-cov - то же самое, но с процентом покрытия вашего кода тестами.

  • Основной гитхаб воркфлоу описан в ./github/workflows/tests.yml и тестирует код при push в любую ветку.