test_api_client.py 1.1 KB

123456789101112131415161718192021222324252627282930313233
  1. """Quick test for API client."""
  2. import sys
  3. sys.path.insert(0, ".")
  4. from src.api_client import WebAPIClient
  5. client = WebAPIClient("http://127.0.0.1:8000")
  6. print("Health:", client.health_check())
  7. projects = client.list_projects()
  8. print(f"Projects: {len(projects)}")
  9. for p in projects:
  10. print(f" #{p['id']}: {p['name']} ({p['topology']})")
  11. plans = client.list_plans(project_id=1)
  12. print(f"Plans for project 1: {len(plans)}")
  13. for pl in plans:
  14. print(f" #{pl['id']}: {pl['name']} ({pl['plan_id']}) status={pl['status']}")
  15. if plans:
  16. plan = client.download_plan(plans[0]["id"])
  17. print(f"Downloaded plan: {plan['plan_id']}")
  18. vars_list = [v["name"] for v in plan["plan_data"].get("variables", [])]
  19. print(f" Variables: {vars_list}")
  20. results = client.get_plan_results(plans[0]["id"])
  21. print(f"Results: {len(results)}")
  22. for r in results[:2]:
  23. tavg = r["metrics"].get("tavg_nm")
  24. eff = r["metrics"].get("efficiency_pct")
  25. print(f" #{r['run_index']}: params={r['params']}, tavg={tavg}, eff={eff}")
  26. print("API client test PASSED")