Spaces:
Configuration error
Configuration error
""" | |
This test ensures that the proxy starts and serves requests even with a bad license. | |
in ci/cd config.yml, we set the license to "bad-license" | |
""" | |
import pytest | |
import aiohttp | |
from typing import Optional | |
async def test_health_and_chat_completion(): | |
""" | |
Test health endpoints and chat completion: | |
1. Check /health/readiness | |
2. Check /health/liveness | |
3. Make a chat completion call | |
""" | |
async with aiohttp.ClientSession() as session: | |
# Test readiness endpoint | |
async with session.get("http://0.0.0.0:4000/health/readiness") as response: | |
assert response.status == 200 | |
readiness_response = await response.json() | |
assert readiness_response["status"] == "connected" | |
# Test liveness endpoint | |
async with session.get("http://0.0.0.0:4000/health/liveness") as response: | |
assert response.status == 200 | |
liveness_response = await response.json() | |
print("liveness_response", liveness_response) | |
# Make a chat completion call | |
url = "http://0.0.0.0:4000/chat/completions" | |
headers = { | |
"Authorization": "Bearer sk-1234", | |
"Content-Type": "application/json", | |
} | |
data = { | |
"model": "gpt-4", | |
"messages": [ | |
{"role": "system", "content": "You are a helpful assistant."}, | |
{"role": "user", "content": "Hello!"}, | |
], | |
} | |
async with session.post(url, headers=headers, json=data) as response: | |
assert response.status == 200 | |
completion_response = await response.json() | |
assert "choices" in completion_response | |