mirror of
https://github.com/home-assistant/core.git
synced 2025-12-24 21:06:19 +00:00
Deprecate cloud tts gender (#112256)
* Deprecate cloud tts gender option * Update http api and prefs * Test migration of prefs to minor version 4 * Adjust breaking date * Add test for bad voice in http api * Flatten tts info * Fix comments * Fix comment date Co-authored-by: Erik Montnemery <erik@montnemery.com> * Clarify voice validator --------- Co-authored-by: Erik Montnemery <erik@montnemery.com>
This commit is contained in:
@@ -1,13 +1,15 @@
|
||||
"""Test Cloud preferences."""
|
||||
|
||||
from typing import Any
|
||||
from unittest.mock import ANY, patch
|
||||
from unittest.mock import ANY, MagicMock, patch
|
||||
|
||||
import pytest
|
||||
|
||||
from homeassistant.auth.const import GROUP_ID_ADMIN
|
||||
from homeassistant.components.cloud.const import DOMAIN, PREF_TTS_DEFAULT_VOICE
|
||||
from homeassistant.components.cloud.prefs import STORAGE_KEY, CloudPreferences
|
||||
from homeassistant.core import HomeAssistant
|
||||
from homeassistant.setup import async_setup_component
|
||||
|
||||
|
||||
async def test_set_username(hass: HomeAssistant) -> None:
|
||||
@@ -149,3 +151,26 @@ async def test_import_google_assistant_settings(
|
||||
prefs = CloudPreferences(hass)
|
||||
await prefs.async_initialize()
|
||||
assert prefs.google_connected == google_connected
|
||||
|
||||
|
||||
@pytest.mark.parametrize(
|
||||
("stored_language", "expected_language", "voice"),
|
||||
[("en-US", "en-US", "GuyNeural"), ("missing_language", "en-US", "JennyNeural")],
|
||||
)
|
||||
async def test_tts_default_voice_legacy_gender(
|
||||
hass: HomeAssistant,
|
||||
cloud: MagicMock,
|
||||
hass_storage: dict[str, Any],
|
||||
stored_language: str,
|
||||
expected_language: str,
|
||||
voice: str,
|
||||
) -> None:
|
||||
"""Test tts with legacy gender as default tts voice setting in storage."""
|
||||
hass_storage[STORAGE_KEY] = {
|
||||
"version": 1,
|
||||
"data": {PREF_TTS_DEFAULT_VOICE: [stored_language, "male"]},
|
||||
}
|
||||
assert await async_setup_component(hass, DOMAIN, {DOMAIN: {}})
|
||||
await hass.async_block_till_done()
|
||||
|
||||
assert cloud.client.prefs.tts_default_voice == (expected_language, voice)
|
||||
|
||||
Reference in New Issue
Block a user