Skip to content

Commit

Permalink
Assign entity category diagnostics to deCONZ battery sensors (#58077)
Browse files Browse the repository at this point in the history
  • Loading branch information
Kane610 committed Oct 20, 2021
1 parent 704929d commit edefa9f
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 0 deletions.
2 changes: 2 additions & 0 deletions homeassistant/components/deconz/sensor.py
Expand Up @@ -33,6 +33,7 @@
DEVICE_CLASS_PRESSURE,
DEVICE_CLASS_TEMPERATURE,
ENERGY_KILO_WATT_HOUR,
ENTITY_CATEGORY_DIAGNOSTIC,
LIGHT_LUX,
PERCENTAGE,
POWER_WATT,
Expand Down Expand Up @@ -73,6 +74,7 @@
device_class=DEVICE_CLASS_BATTERY,
state_class=STATE_CLASS_MEASUREMENT,
native_unit_of_measurement=PERCENTAGE,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
),
Consumption: SensorEntityDescription(
key="consumption",
Expand Down
7 changes: 7 additions & 0 deletions tests/components/deconz/test_sensor.py
Expand Up @@ -14,6 +14,7 @@
DEVICE_CLASS_ILLUMINANCE,
DEVICE_CLASS_POWER,
DEVICE_CLASS_TEMPERATURE,
ENTITY_CATEGORY_DIAGNOSTIC,
STATE_UNAVAILABLE,
)
from homeassistant.helpers import entity_registry as er
Expand Down Expand Up @@ -92,6 +93,8 @@ async def test_sensors(hass, aioclient_mock, mock_deconz_websocket):

assert len(hass.states.async_all()) == 6

ent_reg = er.async_get(hass)

light_level_sensor = hass.states.get("sensor.light_level_sensor")
assert light_level_sensor.state == "999.8"
assert light_level_sensor.attributes[ATTR_DEVICE_CLASS] == DEVICE_CLASS_ILLUMINANCE
Expand All @@ -109,6 +112,10 @@ async def test_sensors(hass, aioclient_mock, mock_deconz_websocket):
switch_2_battery_level = hass.states.get("sensor.switch_2_battery_level")
assert switch_2_battery_level.state == "100"
assert switch_2_battery_level.attributes[ATTR_DEVICE_CLASS] == DEVICE_CLASS_BATTERY
assert (
ent_reg.async_get("sensor.switch_2_battery_level").entity_category
== ENTITY_CATEGORY_DIAGNOSTIC
)

assert not hass.states.get("sensor.daylight_sensor")

Expand Down

0 comments on commit edefa9f

Please sign in to comment.