from __future__ import annotations import sys from pathlib import Path from fastapi.testclient import TestClient sys.path.insert(0, str(Path(__file__).parent.parent)) from server.main import app client = TestClient(app) def test_reset_post_without_body_defaults_to_task1(): response = client.post("/reset") assert response.status_code == 200 payload = response.json() assert payload["task_id"] == "task1" def test_reset_post_with_null_body_defaults_to_task1(): response = client.post("/reset", content="null", headers={"Content-Type": "application/json"}) assert response.status_code == 200 payload = response.json() assert payload["task_id"] == "task1" def test_reset_post_with_empty_json_defaults_to_task1(): response = client.post("/reset", json={}) assert response.status_code == 200 payload = response.json() assert payload["task_id"] == "task1" def test_reset_post_with_task_body_works(): response = client.post("/reset", json={"task_id": "task2"}) assert response.status_code == 200 payload = response.json() assert payload["task_id"] == "task2" def test_reset_post_with_invalid_body_returns_422(): response = client.post("/reset", json={"task_id": "invalid"}) assert response.status_code == 422