diff --git a/homeassistant/components/wled/coordinator.py b/homeassistant/components/wled/coordinator.py index 06c1f8b5dc3..6288a3d8ff7 100644 --- a/homeassistant/components/wled/coordinator.py +++ b/homeassistant/components/wled/coordinator.py @@ -25,6 +25,7 @@ class WLEDDataUpdateCoordinator(DataUpdateCoordinator[WLEDDevice]): """Class to manage fetching WLED data from single endpoint.""" keep_master_light: bool + config_entry: ConfigEntry def __init__( self, diff --git a/homeassistant/components/wled/sensor.py b/homeassistant/components/wled/sensor.py index 48d8443a0a9..b5982798852 100644 --- a/homeassistant/components/wled/sensor.py +++ b/homeassistant/components/wled/sensor.py @@ -11,6 +11,7 @@ from homeassistant.const import ( DEVICE_CLASS_SIGNAL_STRENGTH, DEVICE_CLASS_TIMESTAMP, ELECTRIC_CURRENT_MILLIAMPERE, + ENTITY_CATEGORY_DIAGNOSTIC, PERCENTAGE, SIGNAL_STRENGTH_DECIBELS_MILLIWATT, ) @@ -50,6 +51,7 @@ class WLEDEstimatedCurrentSensor(WLEDEntity, SensorEntity): _attr_icon = "mdi:power" _attr_native_unit_of_measurement = ELECTRIC_CURRENT_MILLIAMPERE _attr_device_class = DEVICE_CLASS_CURRENT + _attr_entity_category = ENTITY_CATEGORY_DIAGNOSTIC def __init__(self, coordinator: WLEDDataUpdateCoordinator) -> None: """Initialize WLED estimated current sensor.""" @@ -76,6 +78,7 @@ class WLEDUptimeSensor(WLEDEntity, SensorEntity): _attr_device_class = DEVICE_CLASS_TIMESTAMP _attr_entity_registry_enabled_default = False + _attr_entity_category = ENTITY_CATEGORY_DIAGNOSTIC def __init__(self, coordinator: WLEDDataUpdateCoordinator) -> None: """Initialize WLED uptime sensor.""" @@ -96,6 +99,7 @@ class WLEDFreeHeapSensor(WLEDEntity, SensorEntity): _attr_icon = "mdi:memory" _attr_entity_registry_enabled_default = False _attr_native_unit_of_measurement = DATA_BYTES + _attr_entity_category = ENTITY_CATEGORY_DIAGNOSTIC def __init__(self, coordinator: WLEDDataUpdateCoordinator) -> None: """Initialize WLED free heap sensor.""" @@ -115,6 +119,7 @@ class WLEDWifiSignalSensor(WLEDEntity, SensorEntity): _attr_icon = "mdi:wifi" _attr_native_unit_of_measurement = PERCENTAGE _attr_entity_registry_enabled_default = False + _attr_entity_category = ENTITY_CATEGORY_DIAGNOSTIC def __init__(self, coordinator: WLEDDataUpdateCoordinator) -> None: """Initialize WLED Wi-Fi signal sensor.""" @@ -136,6 +141,7 @@ class WLEDWifiRSSISensor(WLEDEntity, SensorEntity): _attr_device_class = DEVICE_CLASS_SIGNAL_STRENGTH _attr_native_unit_of_measurement = SIGNAL_STRENGTH_DECIBELS_MILLIWATT _attr_entity_registry_enabled_default = False + _attr_entity_category = ENTITY_CATEGORY_DIAGNOSTIC def __init__(self, coordinator: WLEDDataUpdateCoordinator) -> None: """Initialize WLED Wi-Fi RSSI sensor.""" @@ -156,6 +162,7 @@ class WLEDWifiChannelSensor(WLEDEntity, SensorEntity): _attr_icon = "mdi:wifi" _attr_entity_registry_enabled_default = False + _attr_entity_category = ENTITY_CATEGORY_DIAGNOSTIC def __init__(self, coordinator: WLEDDataUpdateCoordinator) -> None: """Initialize WLED Wi-Fi Channel sensor.""" @@ -176,6 +183,7 @@ class WLEDWifiBSSIDSensor(WLEDEntity, SensorEntity): _attr_icon = "mdi:wifi" _attr_entity_registry_enabled_default = False + _attr_entity_category = ENTITY_CATEGORY_DIAGNOSTIC def __init__(self, coordinator: WLEDDataUpdateCoordinator) -> None: """Initialize WLED Wi-Fi BSSID sensor.""" diff --git a/homeassistant/components/wled/switch.py b/homeassistant/components/wled/switch.py index b17572f7607..376132c18a7 100644 --- a/homeassistant/components/wled/switch.py +++ b/homeassistant/components/wled/switch.py @@ -5,6 +5,7 @@ from typing import Any from homeassistant.components.switch import SwitchEntity from homeassistant.config_entries import ConfigEntry +from homeassistant.const import ENTITY_CATEGORY_CONFIG from homeassistant.core import HomeAssistant from homeassistant.helpers.entity_platform import AddEntitiesCallback @@ -42,6 +43,7 @@ class WLEDNightlightSwitch(WLEDEntity, SwitchEntity): """Defines a WLED nightlight switch.""" _attr_icon = "mdi:weather-night" + _attr_entity_category = ENTITY_CATEGORY_CONFIG def __init__(self, coordinator: WLEDDataUpdateCoordinator) -> None: """Initialize WLED nightlight switch.""" @@ -78,6 +80,7 @@ class WLEDSyncSendSwitch(WLEDEntity, SwitchEntity): """Defines a WLED sync send switch.""" _attr_icon = "mdi:upload-network-outline" + _attr_entity_category = ENTITY_CATEGORY_CONFIG def __init__(self, coordinator: WLEDDataUpdateCoordinator) -> None: """Initialize WLED sync send switch.""" @@ -110,6 +113,7 @@ class WLEDSyncReceiveSwitch(WLEDEntity, SwitchEntity): """Defines a WLED sync receive switch.""" _attr_icon = "mdi:download-network-outline" + _attr_entity_category = ENTITY_CATEGORY_CONFIG def __init__(self, coordinator: WLEDDataUpdateCoordinator) -> None: """Initialize WLED sync receive switch.""" diff --git a/tests/components/wled/test_sensor.py b/tests/components/wled/test_sensor.py index e6e4b130d99..28effd2ff07 100644 --- a/tests/components/wled/test_sensor.py +++ b/tests/components/wled/test_sensor.py @@ -17,6 +17,7 @@ from homeassistant.const import ( ATTR_UNIT_OF_MEASUREMENT, DATA_BYTES, ELECTRIC_CURRENT_MILLIAMPERE, + ENTITY_CATEGORY_DIAGNOSTIC, PERCENTAGE, SIGNAL_STRENGTH_DECIBELS_MILLIWATT, STATE_UNKNOWN, @@ -106,6 +107,7 @@ async def test_sensors( entry = registry.async_get("sensor.wled_rgb_light_estimated_current") assert entry assert entry.unique_id == "aabbccddeeff_estimated_current" + assert entry.entity_category == ENTITY_CATEGORY_DIAGNOSTIC state = hass.states.get("sensor.wled_rgb_light_uptime") assert state @@ -116,26 +118,31 @@ async def test_sensors( entry = registry.async_get("sensor.wled_rgb_light_uptime") assert entry assert entry.unique_id == "aabbccddeeff_uptime" + assert entry.entity_category == ENTITY_CATEGORY_DIAGNOSTIC state = hass.states.get("sensor.wled_rgb_light_free_memory") assert state assert state.attributes.get(ATTR_ICON) == "mdi:memory" assert state.attributes.get(ATTR_UNIT_OF_MEASUREMENT) == DATA_BYTES assert state.state == "14600" + assert entry.entity_category == ENTITY_CATEGORY_DIAGNOSTIC entry = registry.async_get("sensor.wled_rgb_light_free_memory") assert entry assert entry.unique_id == "aabbccddeeff_free_heap" + assert entry.entity_category == ENTITY_CATEGORY_DIAGNOSTIC state = hass.states.get("sensor.wled_rgb_light_wifi_signal") assert state assert state.attributes.get(ATTR_ICON) == "mdi:wifi" assert state.attributes.get(ATTR_UNIT_OF_MEASUREMENT) == PERCENTAGE assert state.state == "76" + assert entry.entity_category == ENTITY_CATEGORY_DIAGNOSTIC entry = registry.async_get("sensor.wled_rgb_light_wifi_signal") assert entry assert entry.unique_id == "aabbccddeeff_wifi_signal" + assert entry.entity_category == ENTITY_CATEGORY_DIAGNOSTIC state = hass.states.get("sensor.wled_rgb_light_wifi_rssi") assert state @@ -149,6 +156,7 @@ async def test_sensors( entry = registry.async_get("sensor.wled_rgb_light_wifi_rssi") assert entry assert entry.unique_id == "aabbccddeeff_wifi_rssi" + assert entry.entity_category == ENTITY_CATEGORY_DIAGNOSTIC state = hass.states.get("sensor.wled_rgb_light_wifi_channel") assert state @@ -159,6 +167,7 @@ async def test_sensors( entry = registry.async_get("sensor.wled_rgb_light_wifi_channel") assert entry assert entry.unique_id == "aabbccddeeff_wifi_channel" + assert entry.entity_category == ENTITY_CATEGORY_DIAGNOSTIC state = hass.states.get("sensor.wled_rgb_light_wifi_bssid") assert state @@ -169,6 +178,7 @@ async def test_sensors( entry = registry.async_get("sensor.wled_rgb_light_wifi_bssid") assert entry assert entry.unique_id == "aabbccddeeff_wifi_bssid" + assert entry.entity_category == ENTITY_CATEGORY_DIAGNOSTIC @pytest.mark.parametrize( diff --git a/tests/components/wled/test_switch.py b/tests/components/wled/test_switch.py index eb8b8b526e0..7ba86960d2b 100644 --- a/tests/components/wled/test_switch.py +++ b/tests/components/wled/test_switch.py @@ -14,6 +14,7 @@ from homeassistant.components.wled.const import ( from homeassistant.const import ( ATTR_ENTITY_ID, ATTR_ICON, + ENTITY_CATEGORY_CONFIG, SERVICE_TURN_OFF, SERVICE_TURN_ON, STATE_OFF, @@ -43,6 +44,7 @@ async def test_switch_state( entry = entity_registry.async_get("switch.wled_rgb_light_nightlight") assert entry assert entry.unique_id == "aabbccddeeff_nightlight" + assert entry.entity_category == ENTITY_CATEGORY_CONFIG state = hass.states.get("switch.wled_rgb_light_sync_send") assert state @@ -53,6 +55,7 @@ async def test_switch_state( entry = entity_registry.async_get("switch.wled_rgb_light_sync_send") assert entry assert entry.unique_id == "aabbccddeeff_sync_send" + assert entry.entity_category == ENTITY_CATEGORY_CONFIG state = hass.states.get("switch.wled_rgb_light_sync_receive") assert state @@ -63,6 +66,7 @@ async def test_switch_state( entry = entity_registry.async_get("switch.wled_rgb_light_sync_receive") assert entry assert entry.unique_id == "aabbccddeeff_sync_receive" + assert entry.entity_category == ENTITY_CATEGORY_CONFIG async def test_switch_change_state(