Spaces:
Sleeping
Sleeping
| from __future__ import annotations | |
| import unittest | |
| import uuid | |
| from pathlib import Path | |
| from bridgelink_asl.config import AppConfig | |
| from bridgelink_asl.pipeline import build_session | |
| class PipelineTests(unittest.TestCase): | |
| def test_synthetic_demo_emits_events_and_transcript(self) -> None: | |
| tmp_root = Path(__file__).resolve().parents[1] / ".tmp-tests" | |
| tmp_root.mkdir(parents=True, exist_ok=True) | |
| scratch_dir = tmp_root / f"pipeline-{uuid.uuid4().hex}" | |
| scratch_dir.mkdir(parents=True, exist_ok=True) | |
| transcript_path = scratch_dir / "demo-transcript.jsonl" | |
| config = AppConfig( | |
| use_camera=False, | |
| hold_frames=2, | |
| confidence_threshold=0.7, | |
| max_frames=6, | |
| transcript_path=transcript_path, | |
| demo_sequence=("HELLO", "YES"), | |
| ) | |
| session = build_session(config) | |
| summary = session.run() | |
| self.assertEqual(summary.frame_source, "synthetic") | |
| self.assertGreaterEqual(len(summary.events), 2) | |
| self.assertTrue(transcript_path.exists()) | |
| self.assertEqual(len(session.speech_selection.adapter.history), len(summary.events)) | |