"""
Test manuel du whisper_service.

Lance avec :
    cd C:\\Dev\\Talk2CV\\backend
    python tests/test_whisper.py
"""

import asyncio
from pathlib import Path

from app.services.whisper_service import whisper_service


async def main():
    # Chemin vers le fichier audio
    audio_path = Path(__file__).parent / "samples" / "test_fr.ogg"

    print(f"📂 Lecture de : {audio_path}")
    print(f"📦 Taille    : {audio_path.stat().st_size} bytes")
    print()

    # Lire le fichier en bytes
    with open(audio_path, "rb") as f:
        audio_bytes = f.read()

    print("🎤 Appel à Groq Whisper...")
    print()

    # Appeler le service
    result = await whisper_service.transcribe(
        audio_bytes=audio_bytes,
        filename="test_fr.ogg",
    )

    # Afficher le résultat
    print("=" * 50)
    print("📝 RÉSULTAT")
    print("=" * 50)
    print(f"Transcript  : {result.transcript}")
    print(f"Langue      : {result.detected_language}")
    print(f"Durée API   : {result.duration_seconds}s")
    print(f"Modèle      : {result.model}")
    print("=" * 50)


if __name__ == "__main__":
    asyncio.run(main())