42 lines
1.3 KiB
Markdown
42 lines
1.3 KiB
Markdown
# polygon v0.1.0
|
|
|
|
Mock-эмулятор Nubes API для интеграционных тестов app-autotest.
|
|
|
|
Отдельный Flask-процесс (порт 5001), притворяющийся Nubes REST API.
|
|
Data-driven: сервисы генерируются из STANDS YAML через `from_stands.py`.
|
|
|
|
## Архитектура
|
|
|
|
```
|
|
polygon/
|
|
├── server.py # Flask-приложение, префикс /api/v1/svc
|
|
├── state.py # MockState — состояние в памяти
|
|
├── config_loader.py # загрузка YAML + достройка defaults
|
|
├── defaults.py # default_for(dataType)
|
|
├── from_stands.py # конвертер STANDS YAML → polygon/services/*.yaml
|
|
└── services/ # сгенерированные конфиги (37 сервисов)
|
|
```
|
|
|
|
## Запуск
|
|
|
|
```bash
|
|
STANDS_DIR=../STANDS/test/resources_yaml python server.py
|
|
```
|
|
|
|
## Тесты
|
|
|
|
```bash
|
|
NUBES_API_ENDPOINT=http://localhost:5001/api/v1/svc pytest ../app-autotest/tests/ -v
|
|
```
|
|
|
|
## Сброс состояния
|
|
|
|
```http
|
|
POST /_mock/reset
|
|
```
|
|
|
|
## Связанные документы
|
|
|
|
- [DOCS/polygon-plan.md](../DOCS/polygon-plan.md) — полный план реализации
|
|
- [AGENT_BRIEFING.md](../AGENT_BRIEFING.md) — контекст проекта app-autotest
|