mirror of
https://github.com/home-assistant/core.git
synced 2025-07-28 07:37:34 +00:00
Use OptionsFlowWithReload in motioneye (#149130)
This commit is contained in:
parent
bc9ad5eac6
commit
00c4b09773
@ -277,11 +277,6 @@ def _add_camera(
|
||||
)
|
||||
|
||||
|
||||
async def _async_entry_updated(hass: HomeAssistant, config_entry: ConfigEntry) -> None:
|
||||
"""Handle entry updates."""
|
||||
await hass.config_entries.async_reload(config_entry.entry_id)
|
||||
|
||||
|
||||
async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
|
||||
"""Set up motionEye from a config entry."""
|
||||
hass.data.setdefault(DOMAIN, {})
|
||||
@ -382,7 +377,6 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
|
||||
coordinator.async_add_listener(_async_process_motioneye_cameras)
|
||||
)
|
||||
await coordinator.async_refresh()
|
||||
entry.async_on_unload(entry.add_update_listener(_async_entry_updated))
|
||||
|
||||
return True
|
||||
|
||||
|
@ -17,7 +17,7 @@ from homeassistant.config_entries import (
|
||||
ConfigEntry,
|
||||
ConfigFlow,
|
||||
ConfigFlowResult,
|
||||
OptionsFlow,
|
||||
OptionsFlowWithReload,
|
||||
)
|
||||
from homeassistant.const import CONF_URL, CONF_WEBHOOK_ID
|
||||
from homeassistant.core import callback
|
||||
@ -186,7 +186,7 @@ class MotionEyeConfigFlow(ConfigFlow, domain=DOMAIN):
|
||||
return MotionEyeOptionsFlow()
|
||||
|
||||
|
||||
class MotionEyeOptionsFlow(OptionsFlow):
|
||||
class MotionEyeOptionsFlow(OptionsFlowWithReload):
|
||||
"""motionEye options flow."""
|
||||
|
||||
async def async_step_init(
|
||||
|
@ -532,7 +532,7 @@ async def test_advanced_options(hass: HomeAssistant) -> None:
|
||||
assert result["data"][CONF_WEBHOOK_SET_OVERWRITE]
|
||||
assert CONF_STREAM_URL_TEMPLATE not in result["data"]
|
||||
assert len(mock_setup.mock_calls) == 0
|
||||
assert len(mock_setup_entry.mock_calls) == 0
|
||||
assert len(mock_setup_entry.mock_calls) == 1
|
||||
|
||||
result = await hass.config_entries.options.async_init(
|
||||
config_entry.entry_id, context={"show_advanced_options": True}
|
||||
@ -551,4 +551,4 @@ async def test_advanced_options(hass: HomeAssistant) -> None:
|
||||
assert result["data"][CONF_WEBHOOK_SET_OVERWRITE]
|
||||
assert result["data"][CONF_STREAM_URL_TEMPLATE] == "http://moo"
|
||||
assert len(mock_setup.mock_calls) == 0
|
||||
assert len(mock_setup_entry.mock_calls) == 0
|
||||
assert len(mock_setup_entry.mock_calls) == 1
|
||||
|
@ -116,7 +116,6 @@ async def test_setup_camera_with_wrong_webhook(
|
||||
)
|
||||
assert not client.async_set_camera.called
|
||||
|
||||
# Update the options, which will trigger a reload with the new behavior.
|
||||
with patch(
|
||||
"homeassistant.components.motioneye.MotionEyeClient",
|
||||
return_value=client,
|
||||
@ -124,6 +123,7 @@ async def test_setup_camera_with_wrong_webhook(
|
||||
hass.config_entries.async_update_entry(
|
||||
config_entry, options={CONF_WEBHOOK_SET_OVERWRITE: True}
|
||||
)
|
||||
await hass.config_entries.async_reload(config_entry.entry_id)
|
||||
await hass.async_block_till_done()
|
||||
|
||||
device = device_registry.async_get_device(
|
||||
|
Loading…
x
Reference in New Issue
Block a user