Files
pipecat/tests/test_inworld_tts_language.py
2026-05-13 11:17:31 +03:00

32 lines
1.3 KiB
Python

#
# Copyright (c) 2024-2026, Daily
#
# SPDX-License-Identifier: BSD 2-Clause License
#
"""Tests for Inworld TTS language code mapping."""
from pipecat.services.inworld.tts import language_to_inworld_language
from pipecat.transcriptions.language import Language
def test_inworld_base_languages_resolve_to_canonical_regional_tags():
"""Base GA languages should use the regional tags emitted by Inworld Playground."""
assert language_to_inworld_language(Language.EN) == "en-US"
assert language_to_inworld_language(Language.RU) == "ru-RU"
assert language_to_inworld_language(Language.FR) == "fr-FR"
assert language_to_inworld_language(Language.ZH) == "zh-CN"
def test_inworld_regional_languages_are_preserved():
"""Explicit regional variants should be passed through as supported BCP-47 tags."""
assert language_to_inworld_language(Language.EN_GB) == "en-GB"
assert language_to_inworld_language(Language.PT_PT) == "pt-PT"
assert language_to_inworld_language(Language.RU_RU) == "ru-RU"
def test_inworld_other_languages_are_passed_through_as_bcp47_tags():
"""Languages outside the canonical locale map should keep their BCP-47 enum value."""
assert language_to_inworld_language(Language.SV_SE) == "sv-SE"
assert language_to_inworld_language(Language.UK_UA) == "uk-UA"