test_health.py 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. from fastapi.testclient import TestClient
  2. from zbt.core.config import Settings
  3. from zbt.domains.agent.repository import InMemoryAgentRepository
  4. from zbt.domains.catalog.repository import InMemoryCatalogRepository
  5. from zbt.domains.enrollment.repository import InMemoryEnrollmentRepository
  6. from zbt.domains.identity.repository import InMemoryIdentityRepository
  7. from zbt.domains.knowledge.index import InMemoryKnowledgeIndex
  8. from zbt.domains.knowledge.repository import InMemoryKnowledgeRepository
  9. from zbt.domains.service_request.repository import InMemoryServiceRequestRepository
  10. from zbt.main import create_app
  11. def test_live_health_reports_project_identity() -> None:
  12. app = create_app(
  13. settings=Settings(
  14. app_env="test",
  15. jwt_access_secret="a" * 32,
  16. jwt_refresh_secret="b" * 32,
  17. field_encryption_key="c" * 32,
  18. ),
  19. identity_repository=InMemoryIdentityRepository(),
  20. catalog_repository=InMemoryCatalogRepository(),
  21. agent_repository=InMemoryAgentRepository(),
  22. enrollment_repository=InMemoryEnrollmentRepository(),
  23. knowledge_repository=InMemoryKnowledgeRepository(),
  24. knowledge_index=InMemoryKnowledgeIndex(),
  25. service_request_repository=InMemoryServiceRequestRepository(),
  26. )
  27. response = TestClient(app).get("/api/v1/system/health/live")
  28. assert response.status_code == 200
  29. assert response.json()["data"] == {
  30. "status": "alive",
  31. "project": "智保通",
  32. "stage": "s3",
  33. }
  34. assert response.json()["meta"]["request_id"]