Make set_value required in number template (#124917)
* Make set_value required in number template * Make set_value required in number template * Fix testspull/124950/head
parent
460363c4ba
commit
8c2e63807c
|
@ -70,7 +70,7 @@ NUMBER_CONFIG_SCHEMA = vol.Schema(
|
|||
vol.Required(CONF_NAME): cv.template,
|
||||
vol.Required(CONF_STATE): cv.template,
|
||||
vol.Required(CONF_STEP): cv.template,
|
||||
vol.Optional(CONF_SET_VALUE): cv.SCRIPT_SCHEMA,
|
||||
vol.Required(CONF_SET_VALUE): cv.SCRIPT_SCHEMA,
|
||||
vol.Optional(CONF_MIN): cv.template,
|
||||
vol.Optional(CONF_MAX): cv.template,
|
||||
vol.Optional(CONF_DEVICE_ID): selector.DeviceSelector(),
|
||||
|
@ -154,11 +154,10 @@ class TemplateNumber(TemplateEntity, NumberEntity):
|
|||
super().__init__(hass, config=config, unique_id=unique_id)
|
||||
assert self._attr_name is not None
|
||||
self._value_template = config[CONF_STATE]
|
||||
self._command_set_value = (
|
||||
Script(hass, config[CONF_SET_VALUE], self._attr_name, DOMAIN)
|
||||
if config.get(CONF_SET_VALUE, None) is not None
|
||||
else None
|
||||
self._command_set_value = Script(
|
||||
hass, config[CONF_SET_VALUE], self._attr_name, DOMAIN
|
||||
)
|
||||
|
||||
self._step_template = config[CONF_STEP]
|
||||
self._min_value_template = config[CONF_MIN]
|
||||
self._max_value_template = config[CONF_MAX]
|
||||
|
|
|
@ -101,11 +101,21 @@ from tests.typing import WebSocketGenerator
|
|||
"min": "{{ 0 }}",
|
||||
"max": "{{ 100 }}",
|
||||
"step": "{{ 0.1 }}",
|
||||
"set_value": {
|
||||
"action": "input_number.set_value",
|
||||
"target": {"entity_id": "input_number.test"},
|
||||
"data": {"value": "{{ value }}"},
|
||||
},
|
||||
},
|
||||
{
|
||||
"min": "{{ 0 }}",
|
||||
"max": "{{ 100 }}",
|
||||
"step": "{{ 0.1 }}",
|
||||
"set_value": {
|
||||
"action": "input_number.set_value",
|
||||
"target": {"entity_id": "input_number.test"},
|
||||
"data": {"value": "{{ value }}"},
|
||||
},
|
||||
},
|
||||
{},
|
||||
),
|
||||
|
@ -444,11 +454,21 @@ def get_suggested(schema, key):
|
|||
"min": "{{ 0 }}",
|
||||
"max": "{{ 100 }}",
|
||||
"step": "{{ 0.1 }}",
|
||||
"set_value": {
|
||||
"action": "input_number.set_value",
|
||||
"target": {"entity_id": "input_number.test"},
|
||||
"data": {"value": "{{ value }}"},
|
||||
},
|
||||
},
|
||||
{
|
||||
"min": "{{ 0 }}",
|
||||
"max": "{{ 100 }}",
|
||||
"step": "{{ 0.1 }}",
|
||||
"set_value": {
|
||||
"action": "input_number.set_value",
|
||||
"target": {"entity_id": "input_number.test"},
|
||||
"data": {"value": "{{ value }}"},
|
||||
},
|
||||
},
|
||||
"state",
|
||||
),
|
||||
|
|
|
@ -322,12 +322,22 @@ async def async_yaml_patch_helper(hass: HomeAssistant, filename: str) -> None:
|
|||
"min": "{{ 0 }}",
|
||||
"max": "{{ 100 }}",
|
||||
"step": "{{ 0.1 }}",
|
||||
"set_value": {
|
||||
"action": "input_number.set_value",
|
||||
"target": {"entity_id": "input_number.test"},
|
||||
"data": {"value": "{{ value }}"},
|
||||
},
|
||||
},
|
||||
{
|
||||
"state": "{{ 11 }}",
|
||||
"min": "{{ 0 }}",
|
||||
"max": "{{ 100 }}",
|
||||
"step": "{{ 0.1 }}",
|
||||
"set_value": {
|
||||
"action": "input_number.set_value",
|
||||
"target": {"entity_id": "input_number.test"},
|
||||
"data": {"value": "{{ value }}"},
|
||||
},
|
||||
},
|
||||
),
|
||||
(
|
||||
|
|
|
@ -61,6 +61,11 @@ async def test_setup_config_entry(
|
|||
"min": "{{ 0 }}",
|
||||
"max": "{{ 100 }}",
|
||||
"step": "{{ 0.1 }}",
|
||||
"set_value": {
|
||||
"action": "input_number.set_value",
|
||||
"target": {"entity_id": "input_number.test"},
|
||||
"data": {"value": "{{ value }}"},
|
||||
},
|
||||
},
|
||||
title="My template",
|
||||
)
|
||||
|
@ -522,6 +527,11 @@ async def test_device_id(
|
|||
"min": "{{ 0 }}",
|
||||
"max": "{{ 100 }}",
|
||||
"step": "{{ 0.1 }}",
|
||||
"set_value": {
|
||||
"action": "input_number.set_value",
|
||||
"target": {"entity_id": "input_number.test"},
|
||||
"data": {"value": "{{ value }}"},
|
||||
},
|
||||
"device_id": device_entry.id,
|
||||
},
|
||||
title="My template",
|
||||
|
|
Loading…
Reference in New Issue