Fix input_text initialization with empty config. (#29829)
This commit is contained in:
parent
66d2f5f61d
commit
3ed1738f76
2 changed files with 9 additions and 10 deletions
|
@ -23,7 +23,9 @@ ENTITY_ID_FORMAT = DOMAIN + ".{}"
|
||||||
|
|
||||||
CONF_INITIAL = "initial"
|
CONF_INITIAL = "initial"
|
||||||
CONF_MIN = "min"
|
CONF_MIN = "min"
|
||||||
|
CONF_MIN_VALUE = 0
|
||||||
CONF_MAX = "max"
|
CONF_MAX = "max"
|
||||||
|
CONF_MAX_VALUE = 100
|
||||||
|
|
||||||
MODE_TEXT = "text"
|
MODE_TEXT = "text"
|
||||||
MODE_PASSWORD = "password"
|
MODE_PASSWORD = "password"
|
||||||
|
@ -59,8 +61,8 @@ CONFIG_SCHEMA = vol.Schema(
|
||||||
vol.All(
|
vol.All(
|
||||||
{
|
{
|
||||||
vol.Optional(CONF_NAME): cv.string,
|
vol.Optional(CONF_NAME): cv.string,
|
||||||
vol.Optional(CONF_MIN, default=0): vol.Coerce(int),
|
vol.Optional(CONF_MIN, default=CONF_MIN_VALUE): vol.Coerce(int),
|
||||||
vol.Optional(CONF_MAX, default=100): vol.Coerce(int),
|
vol.Optional(CONF_MAX, default=CONF_MAX_VALUE): vol.Coerce(int),
|
||||||
vol.Optional(CONF_INITIAL, ""): cv.string,
|
vol.Optional(CONF_INITIAL, ""): cv.string,
|
||||||
vol.Optional(CONF_ICON): cv.icon,
|
vol.Optional(CONF_ICON): cv.icon,
|
||||||
vol.Optional(ATTR_UNIT_OF_MEASUREMENT): cv.string,
|
vol.Optional(ATTR_UNIT_OF_MEASUREMENT): cv.string,
|
||||||
|
@ -121,8 +123,8 @@ async def _async_process_config(config):
|
||||||
if cfg is None:
|
if cfg is None:
|
||||||
cfg = {}
|
cfg = {}
|
||||||
name = cfg.get(CONF_NAME)
|
name = cfg.get(CONF_NAME)
|
||||||
minimum = cfg.get(CONF_MIN)
|
minimum = cfg.get(CONF_MIN, CONF_MIN_VALUE)
|
||||||
maximum = cfg.get(CONF_MAX)
|
maximum = cfg.get(CONF_MAX, CONF_MAX_VALUE)
|
||||||
initial = cfg.get(CONF_INITIAL)
|
initial = cfg.get(CONF_INITIAL)
|
||||||
icon = cfg.get(CONF_ICON)
|
icon = cfg.get(CONF_ICON)
|
||||||
unit = cfg.get(ATTR_UNIT_OF_MEASUREMENT)
|
unit = cfg.get(ATTR_UNIT_OF_MEASUREMENT)
|
||||||
|
|
|
@ -100,8 +100,7 @@ async def test_mode(hass):
|
||||||
assert "password" == state.attributes["mode"]
|
assert "password" == state.attributes["mode"]
|
||||||
|
|
||||||
|
|
||||||
@asyncio.coroutine
|
async def test_restore_state(hass):
|
||||||
def test_restore_state(hass):
|
|
||||||
"""Ensure states are restored on startup."""
|
"""Ensure states are restored on startup."""
|
||||||
mock_restore_cache(
|
mock_restore_cache(
|
||||||
hass,
|
hass,
|
||||||
|
@ -110,10 +109,8 @@ def test_restore_state(hass):
|
||||||
|
|
||||||
hass.state = CoreState.starting
|
hass.state = CoreState.starting
|
||||||
|
|
||||||
yield from async_setup_component(
|
assert await async_setup_component(
|
||||||
hass,
|
hass, DOMAIN, {DOMAIN: {"b1": None, "b2": {"min": 0, "max": 10}}},
|
||||||
DOMAIN,
|
|
||||||
{DOMAIN: {"b1": {"min": 0, "max": 10}, "b2": {"min": 0, "max": 10}}},
|
|
||||||
)
|
)
|
||||||
|
|
||||||
state = hass.states.get("input_text.b1")
|
state = hass.states.get("input_text.b1")
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue