mirror of
https://github.com/Monadical-SAS/reflector.git
synced 2025-12-20 12:19:06 +00:00
* build: move to uv * build: add packages declaration * build: move to python 3.12, as sentencespiece does not work on 3.13 * ci: remove pre-commit check, will be done in another branch. * ci: fix name checkout * ci: update lock and dockerfile * test: remove event_loop, not needed in python 3.12 * test: updated test due to av returning AudioFrame with 4096 samples instead of 1024 * build: prevent using fastapi cli, because there is no way to set default port I don't want to pass --port 1250 every time, so back on previous approach. I deactivated auto-reload for production. * ci: remove main.py * test: fix quirck with httpx
41 lines
1.2 KiB
Python
41 lines
1.2 KiB
Python
import pytest
|
|
|
|
|
|
@pytest.mark.asyncio
|
|
async def test_basic_process(
|
|
nltk,
|
|
dummy_transcript,
|
|
dummy_llm,
|
|
dummy_processors,
|
|
ensure_casing,
|
|
):
|
|
# goal is to start the server, and send rtc audio to it
|
|
# validate the events received
|
|
from reflector.tools.process import process_audio_file
|
|
from reflector.settings import settings
|
|
from pathlib import Path
|
|
|
|
# use an LLM test backend
|
|
settings.LLM_BACKEND = "test"
|
|
settings.TRANSCRIPT_BACKEND = "whisper"
|
|
|
|
# event callback
|
|
marks = {}
|
|
|
|
async def event_callback(event):
|
|
if event.processor not in marks:
|
|
marks[event.processor] = 0
|
|
marks[event.processor] += 1
|
|
|
|
# invoke the process and capture events
|
|
path = Path(__file__).parent / "records" / "test_mathieu_hello.wav"
|
|
await process_audio_file(path.as_posix(), event_callback)
|
|
print(marks)
|
|
|
|
# validate the events
|
|
assert marks["TranscriptLinerProcessor"] == 1
|
|
assert marks["TranscriptTranslatorProcessor"] == 1
|
|
assert marks["TranscriptTopicDetectorProcessor"] == 1
|
|
assert marks["TranscriptFinalSummaryProcessor"] == 1
|
|
assert marks["TranscriptFinalTitleProcessor"] == 1
|