Fix missing backwards compatiblity layer for humidifier supported_features (#107026)

fixes #107018
This commit is contained in:
J. Nick Koston 2024-01-03 14:41:50 -10:00 committed by GitHub
parent bcc7570d81
commit 987663e4de
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 6 additions and 1 deletions

View File

@ -214,7 +214,7 @@ class HumidifierEntity(ToggleEntity, cached_properties=CACHED_PROPERTIES_WITH_AT
if self.target_humidity is not None: if self.target_humidity is not None:
data[ATTR_HUMIDITY] = self.target_humidity data[ATTR_HUMIDITY] = self.target_humidity
if HumidifierEntityFeature.MODES in self.supported_features: if HumidifierEntityFeature.MODES in self.supported_features_compat:
data[ATTR_MODE] = self.mode data[ATTR_MODE] = self.mode
return data return data

View File

@ -7,6 +7,7 @@ import pytest
from homeassistant.components import humidifier from homeassistant.components import humidifier
from homeassistant.components.humidifier import ( from homeassistant.components.humidifier import (
ATTR_MODE,
HumidifierEntity, HumidifierEntity,
HumidifierEntityFeature, HumidifierEntityFeature,
) )
@ -75,6 +76,8 @@ def test_deprecated_supported_features_ints(caplog: pytest.LogCaptureFixture) ->
"""Test deprecated supported features ints.""" """Test deprecated supported features ints."""
class MockHumidifierEntity(HumidifierEntity): class MockHumidifierEntity(HumidifierEntity):
_attr_mode = "mode1"
@property @property
def supported_features(self) -> int: def supported_features(self) -> int:
"""Return supported features.""" """Return supported features."""
@ -89,3 +92,5 @@ def test_deprecated_supported_features_ints(caplog: pytest.LogCaptureFixture) ->
caplog.clear() caplog.clear()
assert entity.supported_features_compat is HumidifierEntityFeature(1) assert entity.supported_features_compat is HumidifierEntityFeature(1)
assert "is using deprecated supported features values" not in caplog.text assert "is using deprecated supported features values" not in caplog.text
assert entity.state_attributes[ATTR_MODE] == "mode1"