mirror of
https://github.com/Electric-Special/ha-core.git
synced 2026-03-28 12:07:20 +01:00
Fix hikvision camera.get_id (#159257)
This commit is contained in:
@@ -56,7 +56,7 @@ async def async_setup_entry(hass: HomeAssistant, entry: HikvisionConfigEntry) ->
|
||||
except requests.exceptions.RequestException as err:
|
||||
raise ConfigEntryNotReady(f"Unable to connect to {host}") from err
|
||||
|
||||
device_id = camera.get_id()
|
||||
device_id = camera.get_id
|
||||
if device_id is None:
|
||||
raise ConfigEntryNotReady(f"Unable to get device ID from {host}")
|
||||
|
||||
|
||||
@@ -51,12 +51,12 @@ class HikvisionConfigFlow(ConfigFlow, domain=DOMAIN):
|
||||
camera = await self.hass.async_add_executor_job(
|
||||
HikCamera, url, port, username, password
|
||||
)
|
||||
device_id = camera.get_id()
|
||||
device_name = camera.get_name
|
||||
except requests.exceptions.RequestException:
|
||||
_LOGGER.exception("Error connecting to Hikvision device")
|
||||
errors["base"] = "cannot_connect"
|
||||
else:
|
||||
device_id = camera.get_id
|
||||
device_name = camera.get_name
|
||||
if device_id is None:
|
||||
errors["base"] = "cannot_connect"
|
||||
else:
|
||||
@@ -104,14 +104,14 @@ class HikvisionConfigFlow(ConfigFlow, domain=DOMAIN):
|
||||
camera = await self.hass.async_add_executor_job(
|
||||
HikCamera, url, port, username, password
|
||||
)
|
||||
device_id = camera.get_id()
|
||||
device_name = camera.get_name
|
||||
except requests.exceptions.RequestException:
|
||||
_LOGGER.exception(
|
||||
"Error connecting to Hikvision device during import, aborting"
|
||||
)
|
||||
return self.async_abort(reason="cannot_connect")
|
||||
|
||||
device_id = camera.get_id
|
||||
device_name = camera.get_name
|
||||
if device_id is None:
|
||||
return self.async_abort(reason="cannot_connect")
|
||||
|
||||
|
||||
@@ -69,7 +69,7 @@ def mock_hikcamera() -> Generator[MagicMock]:
|
||||
),
|
||||
):
|
||||
camera = hikcamera_mock.return_value
|
||||
camera.get_id.return_value = TEST_DEVICE_ID
|
||||
camera.get_id = TEST_DEVICE_ID
|
||||
camera.get_name = TEST_DEVICE_NAME
|
||||
camera.get_type = "Camera"
|
||||
camera.current_event_states = {
|
||||
|
||||
@@ -241,7 +241,7 @@ async def test_yaml_import_abort_creates_issue(
|
||||
issue_registry: ir.IssueRegistry,
|
||||
) -> None:
|
||||
"""Test YAML import creates issue when import is aborted."""
|
||||
mock_hikcamera.return_value.get_id.return_value = None
|
||||
mock_hikcamera.return_value.get_id = None
|
||||
|
||||
await async_setup_component(
|
||||
hass,
|
||||
|
||||
@@ -70,7 +70,7 @@ async def test_form_cannot_connect(
|
||||
mock_hikcamera: MagicMock,
|
||||
) -> None:
|
||||
"""Test we handle cannot connect error and can recover."""
|
||||
mock_hikcamera.return_value.get_id.return_value = None
|
||||
mock_hikcamera.return_value.get_id = None
|
||||
|
||||
result = await hass.config_entries.flow.async_init(
|
||||
DOMAIN, context={"source": SOURCE_USER}
|
||||
@@ -91,7 +91,7 @@ async def test_form_cannot_connect(
|
||||
assert result["errors"] == {"base": "cannot_connect"}
|
||||
|
||||
# Recover from error
|
||||
mock_hikcamera.return_value.get_id.return_value = TEST_DEVICE_ID
|
||||
mock_hikcamera.return_value.get_id = TEST_DEVICE_ID
|
||||
|
||||
result = await hass.config_entries.flow.async_configure(
|
||||
result["flow_id"],
|
||||
@@ -138,7 +138,7 @@ async def test_form_exception(
|
||||
|
||||
# Recover from error
|
||||
mock_hikcamera.side_effect = None
|
||||
mock_hikcamera.return_value.get_id.return_value = TEST_DEVICE_ID
|
||||
mock_hikcamera.return_value.get_id = TEST_DEVICE_ID
|
||||
mock_hikcamera.return_value.get_name = TEST_DEVICE_NAME
|
||||
|
||||
result = await hass.config_entries.flow.async_configure(
|
||||
@@ -269,7 +269,7 @@ async def test_import_flow_no_device_id(
|
||||
mock_hikcamera: MagicMock,
|
||||
) -> None:
|
||||
"""Test YAML import flow aborts when device_id is None."""
|
||||
mock_hikcamera.return_value.get_id.return_value = None
|
||||
mock_hikcamera.return_value.get_id = None
|
||||
|
||||
result = await hass.config_entries.flow.async_init(
|
||||
DOMAIN,
|
||||
|
||||
@@ -53,7 +53,7 @@ async def test_setup_entry_no_device_id(
|
||||
mock_hikcamera: MagicMock,
|
||||
) -> None:
|
||||
"""Test setup fails when device_id is None."""
|
||||
mock_hikcamera.return_value.get_id.return_value = None
|
||||
mock_hikcamera.return_value.get_id = None
|
||||
|
||||
mock_config_entry.add_to_hass(hass)
|
||||
await hass.config_entries.async_setup(mock_config_entry.entry_id)
|
||||
|
||||
Reference in New Issue
Block a user