mirror of
https://github.com/home-assistant/core.git
synced 2025-07-22 20:57:21 +00:00
Allow passing None as input_text config (#26409)
This commit is contained in:
parent
b968b53e38
commit
53720c5c48
@ -58,20 +58,23 @@ def _cv_input_text(cfg):
|
|||||||
CONFIG_SCHEMA = vol.Schema(
|
CONFIG_SCHEMA = vol.Schema(
|
||||||
{
|
{
|
||||||
DOMAIN: cv.schema_with_slug_keys(
|
DOMAIN: cv.schema_with_slug_keys(
|
||||||
vol.All(
|
vol.Any(
|
||||||
{
|
vol.All(
|
||||||
vol.Optional(CONF_NAME): cv.string,
|
{
|
||||||
vol.Optional(CONF_MIN, default=0): vol.Coerce(int),
|
vol.Optional(CONF_NAME): cv.string,
|
||||||
vol.Optional(CONF_MAX, default=100): vol.Coerce(int),
|
vol.Optional(CONF_MIN, default=0): vol.Coerce(int),
|
||||||
vol.Optional(CONF_INITIAL, ""): cv.string,
|
vol.Optional(CONF_MAX, default=100): vol.Coerce(int),
|
||||||
vol.Optional(CONF_ICON): cv.icon,
|
vol.Optional(CONF_INITIAL, ""): cv.string,
|
||||||
vol.Optional(ATTR_UNIT_OF_MEASUREMENT): cv.string,
|
vol.Optional(CONF_ICON): cv.icon,
|
||||||
vol.Optional(ATTR_PATTERN): cv.string,
|
vol.Optional(ATTR_UNIT_OF_MEASUREMENT): cv.string,
|
||||||
vol.Optional(CONF_MODE, default=MODE_TEXT): vol.In(
|
vol.Optional(ATTR_PATTERN): cv.string,
|
||||||
[MODE_TEXT, MODE_PASSWORD]
|
vol.Optional(CONF_MODE, default=MODE_TEXT): vol.In(
|
||||||
),
|
[MODE_TEXT, MODE_PASSWORD]
|
||||||
},
|
),
|
||||||
_cv_input_text,
|
},
|
||||||
|
_cv_input_text,
|
||||||
|
),
|
||||||
|
None,
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
},
|
},
|
||||||
@ -87,6 +90,8 @@ async def async_setup(hass, config):
|
|||||||
entities = []
|
entities = []
|
||||||
|
|
||||||
for object_id, cfg in config[DOMAIN].items():
|
for object_id, cfg in config[DOMAIN].items():
|
||||||
|
if cfg is None:
|
||||||
|
cfg = {}
|
||||||
name = cfg.get(CONF_NAME)
|
name = cfg.get(CONF_NAME)
|
||||||
minimum = cfg.get(CONF_MIN)
|
minimum = cfg.get(CONF_MIN)
|
||||||
maximum = cfg.get(CONF_MAX)
|
maximum = cfg.get(CONF_MAX)
|
||||||
|
@ -186,3 +186,12 @@ async def test_input_text_context(hass, hass_admin_user):
|
|||||||
assert state2 is not None
|
assert state2 is not None
|
||||||
assert state.state != state2.state
|
assert state.state != state2.state
|
||||||
assert state2.context.user_id == hass_admin_user.id
|
assert state2.context.user_id == hass_admin_user.id
|
||||||
|
|
||||||
|
|
||||||
|
async def test_config_none(hass):
|
||||||
|
"""Set up input_text without any config."""
|
||||||
|
await async_setup_component(hass, DOMAIN, {DOMAIN: {"b1": None}})
|
||||||
|
|
||||||
|
state = hass.states.get("input_text.b1")
|
||||||
|
assert state
|
||||||
|
assert str(state.state) == "unknown"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user