ayushsolanki17's picture
Upload folder using huggingface_hub
91bd31b verified
Raw
History Blame Contribute Delete
1.55 kB
import unittest
from fastapi.testclient import TestClient
from server.app import app
class TestAPIEndpoints(unittest.TestCase):
def setUp(self):
self.client = TestClient(app)
def test_tasks_endpoint(self):
response = self.client.get("/tasks")
self.assertEqual(response.status_code, 200)
payload = response.json()
self.assertIn("tasks", payload)
self.assertIn("action_schema", payload)
self.assertGreaterEqual(len(payload["tasks"]), 3)
def test_grader_endpoint(self):
response = self.client.post(
"/grader",
json={
"task_id": "task_diagnose",
"drift_events": ["quantization_applied"],
"remediations": ["revert_quantization"],
"budget_used": 20,
},
)
self.assertEqual(response.status_code, 200)
payload = response.json()
self.assertIn("score", payload)
self.assertGreaterEqual(payload["score"], 0.0)
self.assertLessEqual(payload["score"], 1.0)
def test_baseline_endpoint(self):
response = self.client.post("/baseline")
self.assertEqual(response.status_code, 200)
payload = response.json()
self.assertIn("scores", payload)
self.assertIn("mean_score", payload)
self.assertEqual(set(payload["scores"].keys()), {
"task_detect_localize",
"task_diagnose",
"task_multi_drift",
})
if __name__ == "__main__":
unittest.main()