Files
Sergey Antropoff baa1f58ad0 Fix CI/pulumi blockers and document test suites with latest PASS results.
Stabilize node status, cluster-wide Ceph OSD ids, and QEMU cpu utilization so
status/list no longer 500 on model strings; align pulumi defaults to pve1;
add bilingual testing docs with the 2026-07-18 ci-all + pulumi-tests pass.
2026-07-18 09:38:28 +03:00

2.3 KiB
Raw Permalink Blame History

Language / Язык: English | Русский

Тесты

Где живут наборы и как их запускать.

Структура

Путь Назначение
tests/unit/ Офлайн unit-тесты (handlers, контракты, seed, workers, …)
tests/integration/ Тесты с PostgreSQL (миграции, lease задач)
tests/compatibility/ Surface probe, group smoke, proxmoxer HTTPS, verified-surface
pulumi-tests/ Pulumi surface (majors 69) + lifecycle pulumi-proxmoxve; HTML-отчёт

Seed: app/simulation/seed.py (lab для in-process surface CI, small для Compose / Pulumi).

Цели Make

make test-unit              # pytest: только unit
make test-integration       # pytest -m integration (нужен Postgres)
make test-surface           # каждый объявленный метод majors 6–9
make test-compatibility     # proxmoxer smoke (Compose --profile tls)
make ci                     # ruff + mypy + offline pytest + surface
make ci-all                 # ci + остальной integration + proxmoxer
make pulumi-tests           # Pulumi surface + lifecycle; HTML-отчёт

GitHub Actions на push/PR в main запускает make ci и проверку Compose/Helm. Перед крупными API-изменениями локально: make ci-all и make pulumi-tests.

Отчёт Pulumi: pulumi-tests/pulumi/reports/report.html — см. pulumi-tests/README.ru.md.

Последний локальный прогон (2026-07-18)

Полный прогон без ограничений на этом checkout:

Gate Результат
make ci-all PASS (exit 0)
— unit (offline pytest) 193 passed
— surface probe (majors 69) PASS
— integration 12 passed
— proxmoxer compatibility PASS
make pulumi-tests PASS (exit 0), ~28 с
— lifecycle (pulumi-proxmoxve) PASS
— surface PVE 6.4-15 / 7.4-16 / 8.4.5 / 9.2.3 PASS, critical=0
— coverage 2324 / 2324 методов majors 69

Артефакты: pulumi-tests/pulumi/reports/report.html (также results.json, junit.xml).