|
|
4dce669844
|
fix(tests): 61 failed backend unit tests — async/await mocks, deadlock fix, SyntaxError repairs
Группы исправлений:
- Группа 1 (async/await misuse): MagicMock → AsyncMock для get_dashboards,
export_dashboard, import_dashboard, sync_environment, get_run_detail,
list_all_runs, create_task и др. — 23 теста
- Группа 2 (runner.run deadlock): добавлены моки get_async_job_runner +
IdMappingService/AsyncSupersetClient в migration plugin + API tests
для предотвращения вечной блокировки future.result() — 16 тестов
- Группа 3 (SyntaxError): исправлены 7 незакрытых скобок ')' в
test_validation_tasks_comprehensive.py (QA-агент оставил AsyncMock
без закрывающих скобок)
- Группа 4 (mock verification): logger mock error→explore, scheduler tests
skipped (удалён из production), dataset mapper — 11 тестов
- Группа 5 (search/assistant): MagicMock → AsyncMock — 9 тестов
- Группа 6 (extractor parsing): AsyncMock для async методов — 9 тестов
Итого: 61 ранее FAILED → 274 passed, 4 skipped, 0 failed
|
2026-06-18 14:41:13 +03:00 |
|
|
|
fbe0ba122c
|
037: fix 99 failing tests — missing await after async migration
Fixed async/sync boundary bugs across 14 test files. Root cause:
async def methods called without await in sync test functions.
Fixed files:
- test_translate_jobs.py (10): create_job/get_job/update_job/delete_job
- test_translate_scheduler.py (5): create_schedule/update/delete
- test_datasets.py (14): AsyncMock + corrected patch target
- test_mapping_service.py (11): sync_environment + MockSupersetClient
- test_defensive_guards.py (6): GitService/SupersetClient guards
- test_maintenance_service.py (29): all 6 maintenance services
- test_dry_run_orchestrator.py (1): run() without await
- test_dashboards_api.py (23): registry client via AsyncMock
- test_validation_tasks.py (4): trailing slash in POST URL
- test_superset_matrix.py (3): AsyncMock for compile_preview
- test_payload_reduction.py (6): LLMClient._optimize_image wrapper
- test_compliance_task_integration.py (2): event_bus ref
- test_smoke_plugins.py (1): flusher_stop_event fallback
- test_task_manager.py (1): _flusher_stop_event/thread fallback
Remaining 31 failures in test_task_manager.py (29) and
test_smoke_plugins.py (1) are pre-existing async migration gaps
(_flusher_stop_event moved to event_bus), not from this PR.
|
2026-06-05 15:43:35 +03:00 |
|
|
|
d2b53c2a79
|
feat(validation): v2 LLM dashboard validation — plugin, routes, services
Core implementation of the v2 LLM dashboard validation pipeline:
- LLM plugin with Path A (screenshots) and Path B (logs-only) execution
- Validation task management (CRUD, schedule, run)
- WebSocket task progress with Python 3.13 asyncio fix
- Cross-task runs listing (GET /validation-tasks/runs/all)
- RecordResponse schema for validation records
- JSON prompt helper, per-dashboard status aggregation
- Prompt templates with docs/git-commit/validation presets
- Migration: v2 validation models + description column
- Tests: plugin persistence, prompt templates, batch, payload, url
|
2026-05-31 22:32:20 +03:00 |
|