tinyml-backend / tests /test_api.py
IDKHowToCodeFr's picture
Upload folder using huggingface_hub
604d53b verified
Raw History Blame
1.2 kB
import pytest
from fastapi.testclient import TestClient
import sys
import os
sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), '../backend')))
from main import app
@pytest.fixture
def client():
with TestClient(app) as c:
yield c
def test_history_endpoint(client):
response = client.get("/history")
assert response.status_code == 200
assert isinstance(response.json(), list)
def test_dataset_endpoint(client):
response = client.get("/dataset")
assert response.status_code == 200
assert isinstance(response.json(), list)
def test_export_tinyml_random_forest(client):
response = client.get("/export_tinyml?model_name=rf")
if response.status_code == 200:
data = response.json()
if "error" in data:
assert "not found" in data["error"].lower() or "models untrained" in data["error"].lower()
else:
assert "code" in data or "c_code" in data
def test_metrics_endpoint(client):
response = client.get("/metrics")
assert response.status_code == 200
data = response.json()
assert "ensemble_accuracy" in data
assert "ensemble_f1_macro" in data
assert "models" in data