Spaces:
Sleeping
Sleeping
| """Integration test script — run when FAISS store and models are available. | |
| Usage: | |
| cd backend | |
| python scripts/integration_test.py | |
| """ | |
| import sys | |
| from pathlib import Path | |
| sys.path.insert(0, str(Path(__file__).parent.parent)) | |
| def test_health(): | |
| import httpx | |
| try: | |
| r = httpx.get("http://localhost:8000/health", timeout=5) | |
| assert r.status_code == 200 | |
| print("[OK] Backend health check") | |
| except Exception as e: | |
| print(f"[SKIP] Backend not running: {e}") | |
| def test_faiss(): | |
| from db.faiss_client import FaissDB | |
| db = FaissDB() | |
| db.list_documents() | |
| print("[OK] FAISS store ready") | |
| db.close() | |
| def test_embedder(): | |
| print("Embedder runs on Modal — run: python scripts/test_embedder.py") | |
| def main(): | |
| print("FinSight AI Integration Tests") | |
| print("=" * 40) | |
| try: | |
| test_faiss() | |
| except Exception as e: | |
| print(f"[FAIL] FAISS: {e}") | |
| return 1 | |
| try: | |
| test_embedder() | |
| except Exception as e: | |
| print(f"[SKIP] Embedder (Modal): {e}") | |
| print(" -> Deploy with: modal deploy finsight_modal/app.py") | |
| test_health() | |
| print("=" * 40) | |
| print("Core integration tests passed.") | |
| return 0 | |
| if __name__ == "__main__": | |
| sys.exit(main()) | |