Deprecate light constants (#132680)
* Deprecate light constants * Reference deprecated values in MQTT light * Reference deprecated values in test_recorder * Adjust * Adjust * Add specific testpull/133163/head
parent
97da8481d2
commit
1fbe880c5f
|
@ -186,16 +186,26 @@ ATTR_RGBW_COLOR = "rgbw_color"
|
|||
ATTR_RGBWW_COLOR = "rgbww_color"
|
||||
ATTR_XY_COLOR = "xy_color"
|
||||
ATTR_HS_COLOR = "hs_color"
|
||||
ATTR_COLOR_TEMP = "color_temp" # Deprecated in HA Core 2022.11
|
||||
ATTR_KELVIN = "kelvin" # Deprecated in HA Core 2022.11
|
||||
ATTR_MIN_MIREDS = "min_mireds" # Deprecated in HA Core 2022.11
|
||||
ATTR_MAX_MIREDS = "max_mireds" # Deprecated in HA Core 2022.11
|
||||
ATTR_COLOR_TEMP_KELVIN = "color_temp_kelvin"
|
||||
ATTR_MIN_COLOR_TEMP_KELVIN = "min_color_temp_kelvin"
|
||||
ATTR_MAX_COLOR_TEMP_KELVIN = "max_color_temp_kelvin"
|
||||
ATTR_COLOR_NAME = "color_name"
|
||||
ATTR_WHITE = "white"
|
||||
|
||||
# Deprecated in HA Core 2022.11
|
||||
_DEPRECATED_ATTR_COLOR_TEMP: Final = DeprecatedConstant(
|
||||
"color_temp", "kelvin equivalent (ATTR_COLOR_TEMP_KELVIN)", "2026.1"
|
||||
)
|
||||
_DEPRECATED_ATTR_KELVIN: Final = DeprecatedConstant(
|
||||
"kelvin", "ATTR_COLOR_TEMP_KELVIN", "2026.1"
|
||||
)
|
||||
_DEPRECATED_ATTR_MIN_MIREDS: Final = DeprecatedConstant(
|
||||
"min_mireds", "kelvin equivalent (ATTR_MAX_COLOR_TEMP_KELVIN)", "2026.1"
|
||||
)
|
||||
_DEPRECATED_ATTR_MAX_MIREDS: Final = DeprecatedConstant(
|
||||
"max_mireds", "kelvin equivalent (ATTR_MIN_COLOR_TEMP_KELVIN)", "2026.1"
|
||||
)
|
||||
|
||||
# Brightness of the light, 0..255 or percentage
|
||||
ATTR_BRIGHTNESS = "brightness"
|
||||
ATTR_BRIGHTNESS_PCT = "brightness_pct"
|
||||
|
@ -240,11 +250,11 @@ LIGHT_TURN_ON_SCHEMA: VolDictType = {
|
|||
vol.Exclusive(ATTR_BRIGHTNESS_STEP, ATTR_BRIGHTNESS): VALID_BRIGHTNESS_STEP,
|
||||
vol.Exclusive(ATTR_BRIGHTNESS_STEP_PCT, ATTR_BRIGHTNESS): VALID_BRIGHTNESS_STEP_PCT,
|
||||
vol.Exclusive(ATTR_COLOR_NAME, COLOR_GROUP): cv.string,
|
||||
vol.Exclusive(ATTR_COLOR_TEMP, COLOR_GROUP): vol.All(
|
||||
vol.Exclusive(_DEPRECATED_ATTR_COLOR_TEMP.value, COLOR_GROUP): vol.All(
|
||||
vol.Coerce(int), vol.Range(min=1)
|
||||
),
|
||||
vol.Exclusive(ATTR_COLOR_TEMP_KELVIN, COLOR_GROUP): cv.positive_int,
|
||||
vol.Exclusive(ATTR_KELVIN, COLOR_GROUP): cv.positive_int,
|
||||
vol.Exclusive(_DEPRECATED_ATTR_KELVIN.value, COLOR_GROUP): cv.positive_int,
|
||||
vol.Exclusive(ATTR_HS_COLOR, COLOR_GROUP): vol.All(
|
||||
vol.Coerce(tuple),
|
||||
vol.ExactSequence(
|
||||
|
@ -307,19 +317,29 @@ def preprocess_turn_on_alternatives(
|
|||
_LOGGER.warning("Got unknown color %s, falling back to white", color_name)
|
||||
params[ATTR_RGB_COLOR] = (255, 255, 255)
|
||||
|
||||
if (mired := params.pop(ATTR_COLOR_TEMP, None)) is not None:
|
||||
if (mired := params.pop(_DEPRECATED_ATTR_COLOR_TEMP.value, None)) is not None:
|
||||
_LOGGER.warning(
|
||||
"Got `color_temp` argument in `turn_on` service, which is deprecated "
|
||||
"and will break in Home Assistant 2026.1, please use "
|
||||
"`color_temp_kelvin` argument"
|
||||
)
|
||||
kelvin = color_util.color_temperature_mired_to_kelvin(mired)
|
||||
params[ATTR_COLOR_TEMP] = int(mired)
|
||||
params[_DEPRECATED_ATTR_COLOR_TEMP.value] = int(mired)
|
||||
params[ATTR_COLOR_TEMP_KELVIN] = int(kelvin)
|
||||
|
||||
if (kelvin := params.pop(ATTR_KELVIN, None)) is not None:
|
||||
if (kelvin := params.pop(_DEPRECATED_ATTR_KELVIN.value, None)) is not None:
|
||||
_LOGGER.warning(
|
||||
"Got `kelvin` argument in `turn_on` service, which is deprecated "
|
||||
"and will break in Home Assistant 2026.1, please use "
|
||||
"`color_temp_kelvin` argument"
|
||||
)
|
||||
mired = color_util.color_temperature_kelvin_to_mired(kelvin)
|
||||
params[ATTR_COLOR_TEMP] = int(mired)
|
||||
params[_DEPRECATED_ATTR_COLOR_TEMP.value] = int(mired)
|
||||
params[ATTR_COLOR_TEMP_KELVIN] = int(kelvin)
|
||||
|
||||
if (kelvin := params.pop(ATTR_COLOR_TEMP_KELVIN, None)) is not None:
|
||||
mired = color_util.color_temperature_kelvin_to_mired(kelvin)
|
||||
params[ATTR_COLOR_TEMP] = int(mired)
|
||||
params[_DEPRECATED_ATTR_COLOR_TEMP.value] = int(mired)
|
||||
params[ATTR_COLOR_TEMP_KELVIN] = int(kelvin)
|
||||
|
||||
brightness_pct = params.pop(ATTR_BRIGHTNESS_PCT, None)
|
||||
|
@ -361,7 +381,7 @@ def filter_turn_on_params(light: LightEntity, params: dict[str, Any]) -> dict[st
|
|||
if not brightness_supported(supported_color_modes):
|
||||
params.pop(ATTR_BRIGHTNESS, None)
|
||||
if ColorMode.COLOR_TEMP not in supported_color_modes:
|
||||
params.pop(ATTR_COLOR_TEMP, None)
|
||||
params.pop(_DEPRECATED_ATTR_COLOR_TEMP.value, None)
|
||||
params.pop(ATTR_COLOR_TEMP_KELVIN, None)
|
||||
if ColorMode.HS not in supported_color_modes:
|
||||
params.pop(ATTR_HS_COLOR, None)
|
||||
|
@ -443,7 +463,7 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: # noqa:
|
|||
and ColorMode.COLOR_TEMP not in supported_color_modes
|
||||
and ColorMode.RGBWW in supported_color_modes
|
||||
):
|
||||
params.pop(ATTR_COLOR_TEMP)
|
||||
params.pop(_DEPRECATED_ATTR_COLOR_TEMP.value)
|
||||
color_temp = params.pop(ATTR_COLOR_TEMP_KELVIN)
|
||||
brightness = params.get(ATTR_BRIGHTNESS, light.brightness)
|
||||
params[ATTR_RGBWW_COLOR] = color_util.color_temperature_to_rgbww(
|
||||
|
@ -453,7 +473,7 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: # noqa:
|
|||
light.max_color_temp_kelvin,
|
||||
)
|
||||
elif ColorMode.COLOR_TEMP not in legacy_supported_color_modes:
|
||||
params.pop(ATTR_COLOR_TEMP)
|
||||
params.pop(_DEPRECATED_ATTR_COLOR_TEMP.value)
|
||||
color_temp = params.pop(ATTR_COLOR_TEMP_KELVIN)
|
||||
if color_supported(legacy_supported_color_modes):
|
||||
params[ATTR_HS_COLOR] = color_util.color_temperature_to_hs(
|
||||
|
@ -500,8 +520,10 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: # noqa:
|
|||
params[ATTR_COLOR_TEMP_KELVIN] = color_util.color_xy_to_temperature(
|
||||
*xy_color
|
||||
)
|
||||
params[ATTR_COLOR_TEMP] = color_util.color_temperature_kelvin_to_mired(
|
||||
params[ATTR_COLOR_TEMP_KELVIN]
|
||||
params[_DEPRECATED_ATTR_COLOR_TEMP.value] = (
|
||||
color_util.color_temperature_kelvin_to_mired(
|
||||
params[ATTR_COLOR_TEMP_KELVIN]
|
||||
)
|
||||
)
|
||||
elif ATTR_RGB_COLOR in params and ColorMode.RGB not in supported_color_modes:
|
||||
rgb_color = params.pop(ATTR_RGB_COLOR)
|
||||
|
@ -523,8 +545,10 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: # noqa:
|
|||
params[ATTR_COLOR_TEMP_KELVIN] = color_util.color_xy_to_temperature(
|
||||
*xy_color
|
||||
)
|
||||
params[ATTR_COLOR_TEMP] = color_util.color_temperature_kelvin_to_mired(
|
||||
params[ATTR_COLOR_TEMP_KELVIN]
|
||||
params[_DEPRECATED_ATTR_COLOR_TEMP.value] = (
|
||||
color_util.color_temperature_kelvin_to_mired(
|
||||
params[ATTR_COLOR_TEMP_KELVIN]
|
||||
)
|
||||
)
|
||||
elif ATTR_XY_COLOR in params and ColorMode.XY not in supported_color_modes:
|
||||
xy_color = params.pop(ATTR_XY_COLOR)
|
||||
|
@ -544,8 +568,10 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: # noqa:
|
|||
params[ATTR_COLOR_TEMP_KELVIN] = color_util.color_xy_to_temperature(
|
||||
*xy_color
|
||||
)
|
||||
params[ATTR_COLOR_TEMP] = color_util.color_temperature_kelvin_to_mired(
|
||||
params[ATTR_COLOR_TEMP_KELVIN]
|
||||
params[_DEPRECATED_ATTR_COLOR_TEMP.value] = (
|
||||
color_util.color_temperature_kelvin_to_mired(
|
||||
params[ATTR_COLOR_TEMP_KELVIN]
|
||||
)
|
||||
)
|
||||
elif ATTR_RGBW_COLOR in params and ColorMode.RGBW not in supported_color_modes:
|
||||
rgbw_color = params.pop(ATTR_RGBW_COLOR)
|
||||
|
@ -565,8 +591,10 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: # noqa:
|
|||
params[ATTR_COLOR_TEMP_KELVIN] = color_util.color_xy_to_temperature(
|
||||
*xy_color
|
||||
)
|
||||
params[ATTR_COLOR_TEMP] = color_util.color_temperature_kelvin_to_mired(
|
||||
params[ATTR_COLOR_TEMP_KELVIN]
|
||||
params[_DEPRECATED_ATTR_COLOR_TEMP.value] = (
|
||||
color_util.color_temperature_kelvin_to_mired(
|
||||
params[ATTR_COLOR_TEMP_KELVIN]
|
||||
)
|
||||
)
|
||||
elif (
|
||||
ATTR_RGBWW_COLOR in params and ColorMode.RGBWW not in supported_color_modes
|
||||
|
@ -589,8 +617,10 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: # noqa:
|
|||
params[ATTR_COLOR_TEMP_KELVIN] = color_util.color_xy_to_temperature(
|
||||
*xy_color
|
||||
)
|
||||
params[ATTR_COLOR_TEMP] = color_util.color_temperature_kelvin_to_mired(
|
||||
params[ATTR_COLOR_TEMP_KELVIN]
|
||||
params[_DEPRECATED_ATTR_COLOR_TEMP.value] = (
|
||||
color_util.color_temperature_kelvin_to_mired(
|
||||
params[ATTR_COLOR_TEMP_KELVIN]
|
||||
)
|
||||
)
|
||||
|
||||
# If white is set to True, set it to the light's brightness
|
||||
|
@ -798,7 +828,7 @@ class Profiles:
|
|||
|
||||
color_attributes = (
|
||||
ATTR_COLOR_NAME,
|
||||
ATTR_COLOR_TEMP,
|
||||
_DEPRECATED_ATTR_COLOR_TEMP.value,
|
||||
ATTR_HS_COLOR,
|
||||
ATTR_RGB_COLOR,
|
||||
ATTR_RGBW_COLOR,
|
||||
|
@ -846,13 +876,13 @@ class LightEntity(ToggleEntity, cached_properties=CACHED_PROPERTIES_WITH_ATTR_):
|
|||
{
|
||||
ATTR_SUPPORTED_COLOR_MODES,
|
||||
ATTR_EFFECT_LIST,
|
||||
ATTR_MIN_MIREDS,
|
||||
ATTR_MAX_MIREDS,
|
||||
_DEPRECATED_ATTR_MIN_MIREDS.value,
|
||||
_DEPRECATED_ATTR_MAX_MIREDS.value,
|
||||
ATTR_MIN_COLOR_TEMP_KELVIN,
|
||||
ATTR_MAX_COLOR_TEMP_KELVIN,
|
||||
ATTR_BRIGHTNESS,
|
||||
ATTR_COLOR_MODE,
|
||||
ATTR_COLOR_TEMP,
|
||||
_DEPRECATED_ATTR_COLOR_TEMP.value,
|
||||
ATTR_COLOR_TEMP_KELVIN,
|
||||
ATTR_EFFECT,
|
||||
ATTR_HS_COLOR,
|
||||
|
@ -1072,16 +1102,16 @@ class LightEntity(ToggleEntity, cached_properties=CACHED_PROPERTIES_WITH_ATTR_):
|
|||
data[ATTR_MIN_COLOR_TEMP_KELVIN] = min_color_temp_kelvin
|
||||
data[ATTR_MAX_COLOR_TEMP_KELVIN] = max_color_temp_kelvin
|
||||
if not max_color_temp_kelvin:
|
||||
data[ATTR_MIN_MIREDS] = None
|
||||
data[_DEPRECATED_ATTR_MIN_MIREDS.value] = None
|
||||
else:
|
||||
data[ATTR_MIN_MIREDS] = color_util.color_temperature_kelvin_to_mired(
|
||||
max_color_temp_kelvin
|
||||
data[_DEPRECATED_ATTR_MIN_MIREDS.value] = (
|
||||
color_util.color_temperature_kelvin_to_mired(max_color_temp_kelvin)
|
||||
)
|
||||
if not min_color_temp_kelvin:
|
||||
data[ATTR_MAX_MIREDS] = None
|
||||
data[_DEPRECATED_ATTR_MAX_MIREDS.value] = None
|
||||
else:
|
||||
data[ATTR_MAX_MIREDS] = color_util.color_temperature_kelvin_to_mired(
|
||||
min_color_temp_kelvin
|
||||
data[_DEPRECATED_ATTR_MAX_MIREDS.value] = (
|
||||
color_util.color_temperature_kelvin_to_mired(min_color_temp_kelvin)
|
||||
)
|
||||
if LightEntityFeature.EFFECT in supported_features:
|
||||
data[ATTR_EFFECT_LIST] = self.effect_list
|
||||
|
@ -1254,14 +1284,14 @@ class LightEntity(ToggleEntity, cached_properties=CACHED_PROPERTIES_WITH_ATTR_):
|
|||
color_temp_kelvin = self.color_temp_kelvin
|
||||
data[ATTR_COLOR_TEMP_KELVIN] = color_temp_kelvin
|
||||
if color_temp_kelvin:
|
||||
data[ATTR_COLOR_TEMP] = (
|
||||
data[_DEPRECATED_ATTR_COLOR_TEMP.value] = (
|
||||
color_util.color_temperature_kelvin_to_mired(color_temp_kelvin)
|
||||
)
|
||||
else:
|
||||
data[ATTR_COLOR_TEMP] = None
|
||||
data[_DEPRECATED_ATTR_COLOR_TEMP.value] = None
|
||||
else:
|
||||
data[ATTR_COLOR_TEMP_KELVIN] = None
|
||||
data[ATTR_COLOR_TEMP] = None
|
||||
data[_DEPRECATED_ATTR_COLOR_TEMP.value] = None
|
||||
|
||||
if color_supported(legacy_supported_color_modes) or color_temp_supported(
|
||||
legacy_supported_color_modes
|
||||
|
|
|
@ -18,9 +18,9 @@ from homeassistant.core import Context, HomeAssistant, State
|
|||
from homeassistant.util import color as color_util
|
||||
|
||||
from . import (
|
||||
_DEPRECATED_ATTR_COLOR_TEMP,
|
||||
ATTR_BRIGHTNESS,
|
||||
ATTR_COLOR_MODE,
|
||||
ATTR_COLOR_TEMP,
|
||||
ATTR_COLOR_TEMP_KELVIN,
|
||||
ATTR_EFFECT,
|
||||
ATTR_HS_COLOR,
|
||||
|
@ -41,7 +41,7 @@ ATTR_GROUP = [ATTR_BRIGHTNESS, ATTR_EFFECT]
|
|||
|
||||
COLOR_GROUP = [
|
||||
ATTR_HS_COLOR,
|
||||
ATTR_COLOR_TEMP,
|
||||
_DEPRECATED_ATTR_COLOR_TEMP.value,
|
||||
ATTR_COLOR_TEMP_KELVIN,
|
||||
ATTR_RGB_COLOR,
|
||||
ATTR_RGBW_COLOR,
|
||||
|
@ -129,7 +129,12 @@ async def _async_reproduce_state(
|
|||
if (cm_attr_state := state.attributes.get(cm_attr.state_attr)) is None:
|
||||
if (
|
||||
color_mode != ColorMode.COLOR_TEMP
|
||||
or (mireds := state.attributes.get(ATTR_COLOR_TEMP)) is None
|
||||
or (
|
||||
mireds := state.attributes.get(
|
||||
_DEPRECATED_ATTR_COLOR_TEMP.value
|
||||
)
|
||||
)
|
||||
is None
|
||||
):
|
||||
_LOGGER.warning(
|
||||
"Color mode %s specified but attribute %s missing for: %s",
|
||||
|
|
|
@ -9,17 +9,17 @@ from typing import Any, cast
|
|||
import voluptuous as vol
|
||||
|
||||
from homeassistant.components.light import (
|
||||
_DEPRECATED_ATTR_COLOR_TEMP,
|
||||
_DEPRECATED_ATTR_MAX_MIREDS,
|
||||
_DEPRECATED_ATTR_MIN_MIREDS,
|
||||
ATTR_BRIGHTNESS,
|
||||
ATTR_COLOR_MODE,
|
||||
ATTR_COLOR_TEMP,
|
||||
ATTR_COLOR_TEMP_KELVIN,
|
||||
ATTR_EFFECT,
|
||||
ATTR_EFFECT_LIST,
|
||||
ATTR_HS_COLOR,
|
||||
ATTR_MAX_COLOR_TEMP_KELVIN,
|
||||
ATTR_MAX_MIREDS,
|
||||
ATTR_MIN_COLOR_TEMP_KELVIN,
|
||||
ATTR_MIN_MIREDS,
|
||||
ATTR_RGB_COLOR,
|
||||
ATTR_RGBW_COLOR,
|
||||
ATTR_RGBWW_COLOR,
|
||||
|
@ -115,15 +115,15 @@ MQTT_LIGHT_ATTRIBUTES_BLOCKED = frozenset(
|
|||
{
|
||||
ATTR_COLOR_MODE,
|
||||
ATTR_BRIGHTNESS,
|
||||
ATTR_COLOR_TEMP,
|
||||
_DEPRECATED_ATTR_COLOR_TEMP.value,
|
||||
ATTR_COLOR_TEMP_KELVIN,
|
||||
ATTR_EFFECT,
|
||||
ATTR_EFFECT_LIST,
|
||||
ATTR_HS_COLOR,
|
||||
ATTR_MAX_COLOR_TEMP_KELVIN,
|
||||
ATTR_MAX_MIREDS,
|
||||
_DEPRECATED_ATTR_MAX_MIREDS.value,
|
||||
ATTR_MIN_COLOR_TEMP_KELVIN,
|
||||
ATTR_MIN_MIREDS,
|
||||
_DEPRECATED_ATTR_MIN_MIREDS.value,
|
||||
ATTR_RGB_COLOR,
|
||||
ATTR_RGBW_COLOR,
|
||||
ATTR_RGBWW_COLOR,
|
||||
|
|
|
@ -2623,17 +2623,34 @@ def test_all(module: ModuleType) -> None:
|
|||
|
||||
|
||||
@pytest.mark.parametrize(
|
||||
("constant_name", "constant_value"),
|
||||
[("SUPPORT_BRIGHTNESS", 1), ("SUPPORT_COLOR_TEMP", 2), ("SUPPORT_COLOR", 16)],
|
||||
("constant_name", "constant_value", "constant_replacement"),
|
||||
[
|
||||
("SUPPORT_BRIGHTNESS", 1, "supported_color_modes"),
|
||||
("SUPPORT_COLOR_TEMP", 2, "supported_color_modes"),
|
||||
("SUPPORT_COLOR", 16, "supported_color_modes"),
|
||||
("ATTR_COLOR_TEMP", "color_temp", "kelvin equivalent (ATTR_COLOR_TEMP_KELVIN)"),
|
||||
("ATTR_KELVIN", "kelvin", "ATTR_COLOR_TEMP_KELVIN"),
|
||||
(
|
||||
"ATTR_MIN_MIREDS",
|
||||
"min_mireds",
|
||||
"kelvin equivalent (ATTR_MAX_COLOR_TEMP_KELVIN)",
|
||||
),
|
||||
(
|
||||
"ATTR_MAX_MIREDS",
|
||||
"max_mireds",
|
||||
"kelvin equivalent (ATTR_MIN_COLOR_TEMP_KELVIN)",
|
||||
),
|
||||
],
|
||||
)
|
||||
def test_deprecated_support_light_constants(
|
||||
def test_deprecated_light_constants(
|
||||
caplog: pytest.LogCaptureFixture,
|
||||
constant_name: str,
|
||||
constant_value: int,
|
||||
constant_value: int | str,
|
||||
constant_replacement: str,
|
||||
) -> None:
|
||||
"""Test deprecated format constants."""
|
||||
"""Test deprecated light constants."""
|
||||
import_and_test_deprecated_constant(
|
||||
caplog, light, constant_name, "supported_color_modes", constant_value, "2026.1"
|
||||
caplog, light, constant_name, constant_replacement, constant_value, "2026.1"
|
||||
)
|
||||
|
||||
|
||||
|
@ -2663,3 +2680,61 @@ def test_deprecated_color_mode_constants_enums(
|
|||
import_and_test_deprecated_constant_enum(
|
||||
caplog, light, entity_feature, "COLOR_MODE_", "2026.1"
|
||||
)
|
||||
|
||||
|
||||
async def test_deprecated_turn_on_arguments(
|
||||
hass: HomeAssistant, caplog: pytest.LogCaptureFixture
|
||||
) -> None:
|
||||
"""Test color temp conversion in service calls."""
|
||||
entity = MockLight("Test_ct", STATE_ON, {light.ColorMode.COLOR_TEMP})
|
||||
setup_test_component_platform(hass, light.DOMAIN, [entity])
|
||||
|
||||
assert await async_setup_component(
|
||||
hass, light.DOMAIN, {light.DOMAIN: {"platform": "test"}}
|
||||
)
|
||||
await hass.async_block_till_done()
|
||||
|
||||
state = hass.states.get(entity.entity_id)
|
||||
assert state.attributes["supported_color_modes"] == [light.ColorMode.COLOR_TEMP]
|
||||
|
||||
caplog.clear()
|
||||
await hass.services.async_call(
|
||||
"light",
|
||||
"turn_on",
|
||||
{
|
||||
"entity_id": [entity.entity_id],
|
||||
"color_temp": 200,
|
||||
},
|
||||
blocking=True,
|
||||
)
|
||||
assert "Got `color_temp` argument in `turn_on` service" in caplog.text
|
||||
_, data = entity.last_call("turn_on")
|
||||
assert data == {"color_temp": 200, "color_temp_kelvin": 5000}
|
||||
|
||||
caplog.clear()
|
||||
await hass.services.async_call(
|
||||
"light",
|
||||
"turn_on",
|
||||
{
|
||||
"entity_id": [entity.entity_id],
|
||||
"kelvin": 5000,
|
||||
},
|
||||
blocking=True,
|
||||
)
|
||||
assert "Got `kelvin` argument in `turn_on` service" in caplog.text
|
||||
_, data = entity.last_call("turn_on")
|
||||
assert data == {"color_temp": 200, "color_temp_kelvin": 5000}
|
||||
|
||||
caplog.clear()
|
||||
await hass.services.async_call(
|
||||
"light",
|
||||
"turn_on",
|
||||
{
|
||||
"entity_id": [entity.entity_id],
|
||||
"color_temp_kelvin": 5000,
|
||||
},
|
||||
blocking=True,
|
||||
)
|
||||
_, data = entity.last_call("turn_on")
|
||||
assert data == {"color_temp": 200, "color_temp_kelvin": 5000}
|
||||
assert "argument in `turn_on` service" not in caplog.text
|
||||
|
|
|
@ -9,17 +9,17 @@ import pytest
|
|||
|
||||
from homeassistant.components import light
|
||||
from homeassistant.components.light import (
|
||||
_DEPRECATED_ATTR_COLOR_TEMP,
|
||||
_DEPRECATED_ATTR_MAX_MIREDS,
|
||||
_DEPRECATED_ATTR_MIN_MIREDS,
|
||||
ATTR_BRIGHTNESS,
|
||||
ATTR_COLOR_MODE,
|
||||
ATTR_COLOR_TEMP,
|
||||
ATTR_COLOR_TEMP_KELVIN,
|
||||
ATTR_EFFECT,
|
||||
ATTR_EFFECT_LIST,
|
||||
ATTR_HS_COLOR,
|
||||
ATTR_MAX_COLOR_TEMP_KELVIN,
|
||||
ATTR_MAX_MIREDS,
|
||||
ATTR_MIN_COLOR_TEMP_KELVIN,
|
||||
ATTR_MIN_MIREDS,
|
||||
ATTR_RGB_COLOR,
|
||||
ATTR_RGBW_COLOR,
|
||||
ATTR_RGBWW_COLOR,
|
||||
|
@ -66,8 +66,8 @@ async def test_exclude_attributes(recorder_mock: Recorder, hass: HomeAssistant)
|
|||
assert len(states) >= 1
|
||||
for entity_states in states.values():
|
||||
for state in entity_states:
|
||||
assert ATTR_MIN_MIREDS not in state.attributes
|
||||
assert ATTR_MAX_MIREDS not in state.attributes
|
||||
assert _DEPRECATED_ATTR_MIN_MIREDS.value not in state.attributes
|
||||
assert _DEPRECATED_ATTR_MAX_MIREDS.value not in state.attributes
|
||||
assert ATTR_SUPPORTED_COLOR_MODES not in state.attributes
|
||||
assert ATTR_EFFECT_LIST not in state.attributes
|
||||
assert ATTR_FRIENDLY_NAME in state.attributes
|
||||
|
@ -75,7 +75,7 @@ async def test_exclude_attributes(recorder_mock: Recorder, hass: HomeAssistant)
|
|||
assert ATTR_MIN_COLOR_TEMP_KELVIN not in state.attributes
|
||||
assert ATTR_BRIGHTNESS not in state.attributes
|
||||
assert ATTR_COLOR_MODE not in state.attributes
|
||||
assert ATTR_COLOR_TEMP not in state.attributes
|
||||
assert _DEPRECATED_ATTR_COLOR_TEMP.value not in state.attributes
|
||||
assert ATTR_COLOR_TEMP_KELVIN not in state.attributes
|
||||
assert ATTR_EFFECT not in state.attributes
|
||||
assert ATTR_HS_COLOR not in state.attributes
|
||||
|
|
Loading…
Reference in New Issue