Playwright создаёт фигуры на холсте и сравнивает скриншоты с эталонными PNG.
```sh
bun run test # Запуск тестов, сравнение с эталонами
bun run test:update # Пересоздание эталонных скриншотов
```
### Как это работает
1. Тесты загружают редактор в headless-браузере
2. Редактор сигнализирует о готовности через HTML-атрибут `data-ready`
3. Тесты создают фигуры через API редактора
4. Скриншоты снимаются и сравниваются с эталонами с помощью `toMatchSnapshot`
5. Страница переиспользуется между тест-кейсами для скорости (~2с на все)
### Режим без оформления
Редактор поддерживает тестовый режим, скрывающий элементы интерфейса (панель инструментов, панели) для чистого снятия скриншотов. Активируется через URL-параметр.
## Figma CDP референсные тесты
Отдельный Playwright-проект подключается к Figma через Chrome DevTools Protocol для снятия эталонных скриншотов для попиксельного сравнения.
```sh
bun run figma:debug # Запустить Figma с портом отладки
bun run test:figma # Подключиться к Figma, снять эталоны
```
Требуется запущенное десктопное приложение Figma с`--remote-debugging-port=9222`.
## Юнит-тесты
Юнит-тесты движка используют bun:test и нацелены на время выполнения <50мс: