From a7d838a246a452d574f24a07e984bf55844d7015 Mon Sep 17 00:00:00 2001 From: Gros Frumos Date: Tue, 17 Mar 2026 18:34:56 +0200 Subject: [PATCH] kin: auto-commit after pipeline --- tests/test_api.py | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/tests/test_api.py b/tests/test_api.py index c63e48b..7e11514 100644 --- a/tests/test_api.py +++ b/tests/test_api.py @@ -1106,6 +1106,50 @@ def test_task_full_project_deploy_command_none_when_not_set(client): assert data["project_deploy_command"] is None +# --------------------------------------------------------------------------- +# KIN-INFRA-009 — project_deploy_runtime/host/path в TaskFull +# --------------------------------------------------------------------------- + +def test_task_full_includes_project_deploy_runtime(client): + """GET /api/tasks/{id}/full включает project_deploy_runtime из таблицы projects.""" + client.patch("/api/projects/p1", json={"deploy_runtime": "docker"}) + r = client.get("/api/tasks/P1-001/full") + assert r.status_code == 200 + data = r.json() + assert "project_deploy_runtime" in data + assert data["project_deploy_runtime"] == "docker" + + +def test_task_full_includes_project_deploy_host_and_path(client): + """GET /api/tasks/{id}/full включает project_deploy_host и project_deploy_path.""" + client.patch("/api/projects/p1", json={"deploy_host": "10.0.0.5", "deploy_path": "/srv/app"}) + r = client.get("/api/tasks/P1-001/full") + assert r.status_code == 200 + data = r.json() + assert data["project_deploy_host"] == "10.0.0.5" + assert data["project_deploy_path"] == "/srv/app" + + +def test_task_full_deploy_runtime_fields_none_when_not_set(client): + """GET /api/tasks/{id}/full возвращает None для всех deploy-полей если не заданы.""" + r = client.get("/api/tasks/P1-001/full") + assert r.status_code == 200 + data = r.json() + assert data["project_deploy_runtime"] is None + assert data["project_deploy_host"] is None + assert data["project_deploy_path"] is None + + +def test_task_full_deploy_runtime_and_command_coexist(client): + """GET /api/tasks/{id}/full возвращает одновременно deploy_runtime и deploy_command.""" + client.patch("/api/projects/p1", json={"deploy_runtime": "python", "deploy_command": "make deploy"}) + r = client.get("/api/tasks/P1-001/full") + assert r.status_code == 200 + data = r.json() + assert data["project_deploy_runtime"] == "python" + assert data["project_deploy_command"] == "make deploy" + + # --------------------------------------------------------------------------- # KIN-067 — PATCH obsidian_vault_path + sync/obsidian не возвращает 400 # ---------------------------------------------------------------------------