fix: separate voice credentials and refresh feature toggle
This commit is contained in:
@@ -24,9 +24,9 @@ def settings(**overrides):
|
||||
"voice_input_enabled": False,
|
||||
"voice_max_duration_seconds": 60,
|
||||
"aliyun_nls_app_key": "app-key",
|
||||
"aliyun_nls_access_key_id": "voice-access-id",
|
||||
"aliyun_nls_access_key_secret": "voice-access-secret",
|
||||
"aliyun_nls_endpoint": "https://nls.example/asr",
|
||||
"aliyun_sms_access_key_id": "access-id",
|
||||
"aliyun_sms_access_key_secret": "access-secret",
|
||||
}
|
||||
values.update(overrides)
|
||||
return SimpleNamespace(**values)
|
||||
@@ -50,6 +50,22 @@ def test_transcription_endpoint_is_rejected_when_switch_is_off(monkeypatch):
|
||||
assert exc.value.status_code == 404
|
||||
|
||||
|
||||
def test_voice_credentials_are_loaded_independently_from_sms(monkeypatch):
|
||||
monkeypatch.setattr("app.services.voice_input_service.get_settings", lambda: settings())
|
||||
with database() as db:
|
||||
db.add_all([
|
||||
SystemConfig(config_key="aliyun_sms_access_key_id", config_value="sms-id"),
|
||||
SystemConfig(config_key="aliyun_nls_app_key", config_value="db-app-key"),
|
||||
SystemConfig(config_key="aliyun_nls_access_key_id", config_value="db-voice-id"),
|
||||
SystemConfig(config_key="aliyun_nls_access_key_secret", config_value="db-voice-secret"),
|
||||
])
|
||||
db.commit()
|
||||
config = load_voice_config(db)
|
||||
assert config.app_key == "db-app-key"
|
||||
assert config.access_key_id == "db-voice-id"
|
||||
assert config.access_key_secret == "db-voice-secret"
|
||||
|
||||
|
||||
def test_transcription_returns_provider_text(monkeypatch):
|
||||
monkeypatch.setattr("app.services.voice_input_service.get_settings", lambda: settings(voice_input_enabled=True))
|
||||
monkeypatch.setattr("app.services.voice_input_service._normalize_audio", lambda *_: b"wav")
|
||||
|
||||
Reference in New Issue
Block a user