Use config entry title to name SamsungTV entities (#144254)

This commit is contained in:
epenet 2025-05-06 15:52:33 +02:00 committed by GitHub
parent fbae79fab2
commit bdf6f7f590
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
7 changed files with 14 additions and 19 deletions

View File

@ -12,7 +12,6 @@ from homeassistant.const import (
CONF_HOST,
CONF_MAC,
CONF_MODEL,
CONF_NAME,
)
from homeassistant.exceptions import HomeAssistantError
from homeassistant.helpers import device_registry as dr
@ -41,7 +40,6 @@ class SamsungTVEntity(CoordinatorEntity[SamsungTVDataUpdateCoordinator], Entity)
# Fallback for legacy models that doesn't have a API to retrieve MAC or SerialNumber
self._attr_unique_id = config_entry.unique_id or config_entry.entry_id
self._attr_device_info = DeviceInfo(
name=config_entry.data.get(CONF_NAME),
manufacturer=config_entry.data.get(CONF_MANUFACTURER),
model=config_entry.data.get(CONF_MODEL),
model_id=config_entry.data.get(CONF_MODEL),

View File

@ -89,7 +89,7 @@
StateSnapshot({
'attributes': ReadOnlyDict({
'device_class': 'tv',
'friendly_name': 'any',
'friendly_name': 'Mock Title',
'is_volume_muted': False,
'source_list': list([
'TV',
@ -98,7 +98,7 @@
'supported_features': <MediaPlayerEntityFeature: 24509>,
}),
'context': <ANY>,
'entity_id': 'media_player.any',
'entity_id': 'media_player.mock_title',
'last_changed': <ANY>,
'last_reported': <ANY>,
'last_updated': <ANY>,
@ -123,7 +123,7 @@
'disabled_by': None,
'domain': 'media_player',
'entity_category': None,
'entity_id': 'media_player.any',
'entity_id': 'media_player.mock_title',
'has_entity_name': True,
'hidden_by': None,
'icon': None,

View File

@ -54,7 +54,7 @@ async def test_if_fires_on_turn_on_request(
) -> None:
"""Test for turn_on and turn_off triggers firing."""
await setup_samsungtv_entry(hass, MOCK_ENTRYDATA_ENCRYPTED_WS)
entity_id = "media_player.fake"
entity_id = "media_player.mock_title"
device = device_registry.async_get_device(
identifiers={(DOMAIN, "be9554b9-c9fb-41f4-8920-22da015376a4")}

View File

@ -49,7 +49,7 @@ from .const import (
from tests.common import MockConfigEntry, load_json_object_fixture
ENTITY_ID = f"{MP_DOMAIN}.fake_name"
ENTITY_ID = f"{MP_DOMAIN}.mock_title"
MOCK_CONFIG = {
CONF_HOST: "fake_host",
CONF_NAME: "fake_name",
@ -65,7 +65,7 @@ async def test_setup(hass: HomeAssistant) -> None:
# test name and turn_on
assert state
assert state.name == "fake_name"
assert state.name == "Mock Title"
assert (
state.attributes[ATTR_SUPPORTED_FEATURES]
== SUPPORT_SAMSUNGTV | MediaPlayerEntityFeature.TURN_ON
@ -151,8 +151,8 @@ async def test_setup_updates_from_ssdp(
await hass.async_block_till_done()
await hass.async_block_till_done()
assert hass.states.get("media_player.any") == snapshot
assert entity_registry.async_get("media_player.any") == snapshot
assert hass.states.get("media_player.mock_title") == snapshot
assert entity_registry.async_get("media_player.mock_title") == snapshot
assert (
entry.data[CONF_SSDP_MAIN_TV_AGENT_LOCATION]
== "https://fake_host:12345/tv_agent"

View File

@ -94,7 +94,7 @@ from tests.common import (
load_json_object_fixture,
)
ENTITY_ID = f"{MP_DOMAIN}.fake"
ENTITY_ID = f"{MP_DOMAIN}.mock_title"
MOCK_CONFIGWS = {
CONF_HOST: "fake_host",
CONF_NAME: "fake",
@ -158,12 +158,9 @@ async def test_setup_websocket_2(
hass: HomeAssistant, freezer: FrozenDateTimeFactory
) -> None:
"""Test setup of platform from config entry."""
entity_id = f"{MP_DOMAIN}.fake"
entry = MockConfigEntry(
domain=DOMAIN,
data=MOCK_ENTRY_WS,
unique_id=entity_id,
)
entry.add_to_hass(hass)
@ -188,7 +185,7 @@ async def test_setup_websocket_2(
async_fire_time_changed(hass)
await hass.async_block_till_done(wait_background_tasks=True)
state = hass.states.get(entity_id)
state = hass.states.get(ENTITY_ID)
assert state
remote_class.assert_called_once_with(**MOCK_CALLS_WS)
@ -640,7 +637,7 @@ async def test_name(hass: HomeAssistant) -> None:
"""Test for name property."""
await setup_samsungtv_entry(hass, MOCK_CONFIG)
state = hass.states.get(ENTITY_ID)
assert state.attributes[ATTR_FRIENDLY_NAME] == "fake"
assert state.attributes[ATTR_FRIENDLY_NAME] == "Mock Title"
@pytest.mark.usefixtures("remote")

View File

@ -21,7 +21,7 @@ from .const import MOCK_CONFIG, MOCK_ENTRY_WS_WITH_MAC, MOCK_ENTRYDATA_ENCRYPTED
from tests.common import MockConfigEntry
ENTITY_ID = f"{REMOTE_DOMAIN}.fake"
ENTITY_ID = f"{REMOTE_DOMAIN}.mock_title"
@pytest.mark.usefixtures("remoteencws", "rest_api")

View File

@ -28,7 +28,7 @@ async def test_turn_on_trigger_device_id(
"""Test for turn_on triggers by device_id firing."""
await setup_samsungtv_entry(hass, MOCK_ENTRYDATA_ENCRYPTED_WS)
entity_id = f"{entity_domain}.fake"
entity_id = f"{entity_domain}.mock_title"
device = device_registry.async_get_device(
identifiers={(DOMAIN, "be9554b9-c9fb-41f4-8920-22da015376a4")}
@ -92,7 +92,7 @@ async def test_turn_on_trigger_entity_id(
"""Test for turn_on triggers by entity_id firing."""
await setup_samsungtv_entry(hass, MOCK_ENTRYDATA_ENCRYPTED_WS)
entity_id = f"{entity_domain}.fake"
entity_id = f"{entity_domain}.mock_title"
assert await async_setup_component(
hass,