papayu/tests
Yuriy 65e95a458d feat: мульти-провайдер LLM, тренды дизайна, Snyk/Documatic sync, личная автоматизация
- Мульти-провайдер: PAPAYU_LLM_PROVIDERS — сбор планов от нескольких ИИ (Claude, OpenAI), агрегация
- Тренды дизайна и иконок: вкладка в модалке, поиск по безопасным доменам (Tavily include_domains)
- Snyk Code: PAPAYU_SNYK_SYNC, REST API issues → snyk_findings в agent-sync
- Documatic: architecture_summary из .papa-yu/architecture.md в agent-sync
- Личная автоматизация: capability personal-automation (терминал git/npm/cargo, открытие URL)
- agent_sync расширен: snyk_findings, architecture_summary; analyze_project_cmd и run_batch пишут sync
- Документация: SNYK_AND_DOCUMATIC_SYNC.md, SECURITY_AND_PERSONAL_AUTOMATION.md, обновлён CLAUDE_AND_AGENT_SYNC

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-10 15:05:39 +03:00
..
fixtures feat: мульти-провайдер LLM, тренды дизайна, Snyk/Documatic sync, личная автоматизация 2026-02-10 15:05:39 +03:00
README.md feat: мульти-провайдер LLM, тренды дизайна, Snyk/Documatic sync, личная автоматизация 2026-02-10 15:05:39 +03:00

PAPA YU Tests

Структура

tests/
├── README.md           # Этот файл
└── fixtures/           # Тестовые фикстуры (минимальные проекты)
    ├── minimal-node/   # Node.js проект без README
    └── minimal-rust/   # Rust проект без README

docs/golden_traces/     # Эталонные трассы (регрессия, без raw_content)
├── README.md
└── v1/                 # Protocol v1 fixtures
    001_fix_bug_plan.json
    002_fix_bug_apply.json
    ...

Юнит-тесты (Rust)

Запуск всех юнит-тестов:

cd src-tauri
cargo test

Текущие тесты покрывают:

  • golden_traces_v1_validate — валидация fixtures в docs/golden_traces/v1/ (schema_version, schema_hash, parse, validate_actions, NO_CHANGES)
  • detect_project_type — определение типа проекта
  • get_project_limits — лимиты по типу проекта
  • is_protected_file — защита служебных файлов
  • is_text_allowed — фильтр текстовых файлов
  • settings_export — экспорт/импорт настроек

E2E сценарий (ручной)

См. docs/E2E_SCENARIO.md для пошагового сценария:

  1. Запустить приложение: npm run tauri dev
  2. Выбрать одну из фикстур (например, tests/fixtures/minimal-node)
  3. Запустить анализ
  4. Применить рекомендованные исправления
  5. Проверить, что README.md создан
  6. Откатить изменения (Undo)
  7. Проверить, что README.md удалён

Тестовые фикстуры

minimal-node

Минимальный Node.js проект:

  • package.json — манифест пакета
  • index.js — точка входа
  • Нет README — должен быть предложен при анализе

minimal-rust

Минимальный Rust проект:

  • Cargo.toml — манифест пакета
  • src/main.rs — точка входа
  • Нет README — должен быть предложен при анализе

Автоматизация E2E (будущее)

Планируется использовать:

  • Tauri test — для тестирования команд
  • Playwright — для тестирования UI