File size: 716 Bytes
51a27d1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
from __future__ import annotations

import unittest

from bridgelink_asl.config import AppConfig
from bridgelink_asl.speech import select_speech_adapter


class SpeechSelectionTests(unittest.TestCase):
    def test_default_mock_speech_selection(self) -> None:
        selection = select_speech_adapter(AppConfig())
        self.assertEqual(selection.resolved_provider, "mock")
        self.assertEqual(selection.adapter.name, "mock")

    def test_elevenlabs_without_credentials_falls_back(self) -> None:
        selection = select_speech_adapter(AppConfig(tts_provider="elevenlabs"))
        self.assertEqual(selection.resolved_provider, "mock")
        self.assertIn("requires", selection.fallback_reason.lower())