lazier

personal summarizer
Log | Files | Refs | README

test_diarization.py (1071B)


      1 """Testes da fusão texto + intervalos de falantes."""
      2 
      3 import unittest
      4 
      5 from lazier.diarization import merge_transcript_with_speakers
      6 
      7 
      8 class DiarizationMergeTests(unittest.TestCase):
      9     def test_merge_groups_consecutive_segments_per_speaker(self):
     10         intervals = [
     11             {"start": 0.0, "end": 10.0, "speaker_id": "A"},
     12             {"start": 10.0, "end": 20.0, "speaker_id": "B"},
     13         ]
     14         segments = [
     15             {"start": 1.0, "end": 3.0, "text": "Ola"},
     16             {"start": 4.0, "end": 6.0, "text": "mundo"},
     17             {"start": 11.0, "end": 14.0, "text": "Segundo falante"},
     18         ]
     19         out = merge_transcript_with_speakers("", segments, intervals)
     20         self.assertIn("**Falante 1**", out)
     21         self.assertIn("**Falante 2**", out)
     22         self.assertIn("Ola mundo", out)
     23         self.assertIn("Segundo falante", out)
     24 
     25     def test_merge_without_intervals_returns_raw(self):
     26         raw = "Apenas texto."
     27         self.assertEqual(merge_transcript_with_speakers(raw, [], []), raw)
     28 
     29 
     30 if __name__ == "__main__":
     31     unittest.main()