import pytest from fastapi.testclient import TestClient from main import app client = TestClient(app) def test_anime_search_htmx(): """Vérifie que la recherche d'anime renvoie du HTML avec HTMX""" response = client.get("/api/anime/search?q=Naruto", headers={"HX-Request": "true"}) assert response.status_code == 200 assert "search-results-container" in response.text assert "anime-card" in response.text def test_series_search_htmx(): """Vérifie que la recherche de séries renvoie du HTML avec HTMX""" response = client.get("/api/series/search?q=Breaking", headers={"HX-Request": "true"}) assert response.status_code == 200 assert "search-results-container" in response.text # On vérifie que soit on a des résultats, soit le message "aucune série trouvée" assert "anime-grid" in response.text or "aucune série TV trouvée" in response.text.lower() def test_recommendations_htmx(): """Vérifie que les recommandations renvoient du HTML""" response = client.get("/api/recommendations", headers={"HX-Request": "true"}) assert response.status_code == 200 assert "recommendations-grid" in response.text def test_latest_releases_htmx(): """Vérifie que les sorties récentes renvoient du HTML""" response = client.get("/api/releases/latest", headers={"HX-Request": "true"}) assert response.status_code == 200 assert "releases-grid" in response.text def test_episode_list_htmx(): """Vérifie que la liste des épisodes renvoie du HTML""" # Utilisation d'un lien bidon pour tester le rendu du composant test_url = "https://anime-sama.fr/anime/vostfr/naruto" response = client.get(f"/api/anime/episodes?url={test_url}", headers={"HX-Request": "true"}) assert response.status_code == 200 assert "episode-list-container" in response.text