Тестирование
Strudel использует vitest для тестирования с 2 типами стратегий тестирования:
- модульные тесты для детального тестирования
- автоматизированные snapshot тесты для более широкого тестирования
Модульные тесты
Каждый package имеет папку test, где тесты написаны на основе файла за файлом, например util.test.mjs реализует все тесты для util.mjs.
Snapshot тесты
Snapshot тесты позволяют тестировать большие фрагменты данных. Strudel использует snapshot тесты для:
- Примеров фрагментов:
examples.test.mjs, используя фрагменты под@exampleвнутри jsdoc комментариев - Примеров мелодий:
tunes.test.mjs, используя все patterns вtunes.mjs
Файлы snapshot (.snap) содержат все haps в пределах определенного количества cycles для каждого тестируемого pattern.
Они позволяют тестировать критические изменения в более широком масштабе.
Если критические изменения преднамеренны, snapshots можно обновить с помощью npm run snapshot.
Просто убедитесь, что проверили, что все затронутые patterns ведут себя как ожидалось.