mirror of
https://github.com/home-assistant/core.git
synced 2025-04-24 09:17:53 +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(
|
||||
{
|
||||
DOMAIN: cv.schema_with_slug_keys(
|
||||
vol.All(
|
||||
{
|
||||
vol.Optional(CONF_NAME): cv.string,
|
||||
vol.Optional(CONF_MIN, default=0): vol.Coerce(int),
|
||||
vol.Optional(CONF_MAX, default=100): vol.Coerce(int),
|
||||
vol.Optional(CONF_INITIAL, ""): cv.string,
|
||||
vol.Optional(CONF_ICON): cv.icon,
|
||||
vol.Optional(ATTR_UNIT_OF_MEASUREMENT): cv.string,
|
||||
vol.Optional(ATTR_PATTERN): cv.string,
|
||||
vol.Optional(CONF_MODE, default=MODE_TEXT): vol.In(
|
||||
[MODE_TEXT, MODE_PASSWORD]
|
||||
),
|
||||
},
|
||||
_cv_input_text,
|
||||
vol.Any(
|
||||
vol.All(
|
||||
{
|
||||
vol.Optional(CONF_NAME): cv.string,
|
||||
vol.Optional(CONF_MIN, default=0): vol.Coerce(int),
|
||||
vol.Optional(CONF_MAX, default=100): vol.Coerce(int),
|
||||
vol.Optional(CONF_INITIAL, ""): cv.string,
|
||||
vol.Optional(CONF_ICON): cv.icon,
|
||||
vol.Optional(ATTR_UNIT_OF_MEASUREMENT): cv.string,
|
||||
vol.Optional(ATTR_PATTERN): cv.string,
|
||||
vol.Optional(CONF_MODE, default=MODE_TEXT): vol.In(
|
||||
[MODE_TEXT, MODE_PASSWORD]
|
||||
),
|
||||
},
|
||||
_cv_input_text,
|
||||
),
|
||||
None,
|
||||
)
|
||||
)
|
||||
},
|
||||
@ -87,6 +90,8 @@ async def async_setup(hass, config):
|
||||
entities = []
|
||||
|
||||
for object_id, cfg in config[DOMAIN].items():
|
||||
if cfg is None:
|
||||
cfg = {}
|
||||
name = cfg.get(CONF_NAME)
|
||||
minimum = cfg.get(CONF_MIN)
|
||||
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 state.state != state2.state
|
||||
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