Files
dikte/tests/test_groq.py
T

38 lines
1.3 KiB
Python

import json
import pathlib
import tempfile
import unittest
from unittest import mock
import api
import config
import settings_ui
class GroqCompatibilityTests(unittest.TestCase):
def test_old_config_gains_groq_defaults(self):
with tempfile.TemporaryDirectory() as directory:
path = pathlib.Path(directory) / "config.json"
path.write_text(json.dumps({"transcribe_provider": "openai"}), encoding="utf-8")
with mock.patch.object(config, "CONFIG_FILE", path):
conf = config.Config()
self.assertEqual(conf["groq_base_url"], api.GROQ_URL)
self.assertEqual(conf["groq_transcribe_model"], "whisper-large-v3-turbo")
def test_groq_target_and_timestamp_model(self):
with mock.patch.object(config.Config, "load"):
conf = config.Config()
conf["transcribe_provider"] = "groq"
conf["groq_api_key"] = "test-key"
target = conf.transcribe_target()
self.assertEqual(target.provider, "groq")
self.assertEqual(target.base_url, api.GROQ_URL)
self.assertEqual(api.timestamp_model(target.provider, target.model), target.model)
def test_groq_is_available_in_settings(self):
self.assertIn(("Groq", "groq"), settings_ui.TRANSCRIBE_PROVIDERS)
if __name__ == "__main__":
unittest.main()