18 lines
696 B
Python
18 lines
696 B
Python
from app.infrastructure.soniox import group_by_speaker
|
|
|
|
|
|
def test_group_by_speaker_flushes_on_sentence_and_speaker_change():
|
|
segments = group_by_speaker(
|
|
[
|
|
{"speaker": "Bride", "text": "Create ", "start_ms": 0, "end_ms": 100},
|
|
{"speaker": "Bride", "text": "a task.", "start_ms": 100, "end_ms": 500},
|
|
{"speaker": "Planner", "text": "Add ", "start_ms": 600, "end_ms": 700},
|
|
{"speaker": "Planner", "text": "a note.", "start_ms": 700, "end_ms": 1000},
|
|
]
|
|
)
|
|
|
|
assert len(segments) == 2
|
|
assert segments[0].speaker == "Bride"
|
|
assert segments[0].edited_text == "Create a task."
|
|
assert segments[1].speaker == "Planner"
|