Add support for device configuration URL to UniFi Controller (#58237)
This commit is contained in:
parent
e5255cf21f
commit
9c1bee9c16
3 changed files with 13 additions and 0 deletions
|
@ -61,6 +61,7 @@ async def async_setup_entry(hass, config_entry):
|
|||
device_registry = dr.async_get(hass)
|
||||
device_registry.async_get_or_create(
|
||||
config_entry_id=config_entry.entry_id,
|
||||
configuration_url=controller.api.url,
|
||||
connections={(CONNECTION_NETWORK_MAC, controller.mac)},
|
||||
default_manufacturer=ATTR_MANUFACTURER,
|
||||
default_model="UniFi Controller",
|
||||
|
|
|
@ -40,6 +40,8 @@ from homeassistant.const import (
|
|||
CONF_VERIFY_SSL,
|
||||
CONTENT_TYPE_JSON,
|
||||
)
|
||||
from homeassistant.helpers import device_registry as dr
|
||||
from homeassistant.helpers.device_registry import CONNECTION_NETWORK_MAC
|
||||
from homeassistant.helpers.dispatcher import async_dispatcher_connect
|
||||
from homeassistant.setup import async_setup_component
|
||||
import homeassistant.util.dt as dt_util
|
||||
|
@ -256,6 +258,14 @@ async def test_controller_mac(hass, aioclient_mock):
|
|||
controller = hass.data[UNIFI_DOMAIN][config_entry.entry_id]
|
||||
assert controller.mac == CONTROLLER_HOST["mac"]
|
||||
|
||||
device_registry = dr.async_get(hass)
|
||||
device_entry = device_registry.async_get_or_create(
|
||||
config_entry_id=config_entry.entry_id,
|
||||
connections={(CONNECTION_NETWORK_MAC, controller.mac)},
|
||||
)
|
||||
|
||||
assert device_entry.configuration_url == controller.api.url
|
||||
|
||||
|
||||
async def test_controller_not_accessible(hass):
|
||||
"""Retry to login gets scheduled when connection fails."""
|
||||
|
|
|
@ -48,6 +48,7 @@ async def test_controller_mac(hass):
|
|||
with patch("homeassistant.components.unifi.UniFiController") as mock_controller:
|
||||
mock_controller.return_value.async_setup = AsyncMock(return_value=True)
|
||||
mock_controller.return_value.mac = "mac1"
|
||||
mock_controller.return_value.api.url = "https://123:443"
|
||||
assert await unifi.async_setup_entry(hass, entry) is True
|
||||
|
||||
assert len(mock_controller.mock_calls) == 2
|
||||
|
@ -56,6 +57,7 @@ async def test_controller_mac(hass):
|
|||
device = device_registry.async_get_or_create(
|
||||
config_entry_id=entry.entry_id, connections={(CONNECTION_NETWORK_MAC, "mac1")}
|
||||
)
|
||||
assert device.configuration_url == "https://123:443"
|
||||
assert device.manufacturer == "Ubiquiti Networks"
|
||||
assert device.model == "UniFi Controller"
|
||||
assert device.name == "UniFi Controller"
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue