fix: _build_default_json→json.dumps + 409 repeat run + MOCK_AUTH_TOKEN

This commit is contained in:
2026-07-31 23:00:06 +04:00
parent 1fa2d9a7bc
commit 9b8d90218c
4 changed files with 41 additions and 19 deletions
+6 -4
View File
@@ -34,16 +34,18 @@ def run_operation(uid):
После этого GET /instanceOperations/{uid} вернёт dtFinish,
и poll_until_done() в app-autotest завершит поллинг.
⛔ Нет защиты от повторного run — если вызвать дважды, dtStart
перезапишется и эффект применится повторно. Для тестовых целей
(MOCK_OP_DELAY ≤ 0.5с) вероятность минимальна.
Возвращает {"ok": True} — формат как в реальном Nubes API.
Повторный вызов → 409 (operation already completed).
"""
op = mock_state.state.get_operation(uid)
if not op:
return jsonify({"error": "operation not found"}), 404
# Защита от повторного запуска: если dtFinish уже проставлен —
# операция уже выполнена, повторный run может испортить данные.
if op.get("dtFinish") is not None:
return jsonify({"error": "operation already completed"}), 409
# Фиксируем время старта
op["dtStart"] = _now()