from __future__ import annotations from fastapi.testclient import TestClient from src.astro_mcp.server import create_app def test_health_endpoint_smoke() -> None: client = TestClient(create_app()) res = client.get("/health") assert res.status_code == 200 data = res.json() assert data["ok"] is True assert data["server"] == "astro-mcp" assert data["port"] == 7016 assert "version" in data def test_root_lists_tools() -> None: client = TestClient(create_app()) res = client.get("/") assert res.status_code == 200 data = res.json() assert data["server"] == "astro-mcp" assert data["status"] == "ready" assert data["tools"] == [ "get_planetary_positions", "calculate_natal_chart", "calculate_transit_chart", "calculate_synastry_chart", "calculate_composite_chart", "get_transit_preview", "person_manage", "list_house_systems", "calculate_natal_chart_by_id", "calculate_transit_chart_by_id", "calculate_synastry_chart_by_id", "calculate_composite_chart_by_id", "get_transit_preview_by_id", ] assert data["mcp"] == {"sse": "/mcp/sse", "messages": "/mcp/messages"}