Use ZeroconfServiceInfo in volumio (#60116)
Co-authored-by: epenet <epenet@users.noreply.github.com>pull/60137/head
parent
bac3c1fd75
commit
5a40322cda
|
@ -10,6 +10,7 @@ from homeassistant import config_entries, exceptions
|
||||||
from homeassistant.components import zeroconf
|
from homeassistant.components import zeroconf
|
||||||
from homeassistant.const import CONF_HOST, CONF_ID, CONF_NAME, CONF_PORT
|
from homeassistant.const import CONF_HOST, CONF_ID, CONF_NAME, CONF_PORT
|
||||||
from homeassistant.core import callback
|
from homeassistant.core import callback
|
||||||
|
from homeassistant.data_entry_flow import FlowResult
|
||||||
from homeassistant.helpers.aiohttp_client import async_get_clientsession
|
from homeassistant.helpers.aiohttp_client import async_get_clientsession
|
||||||
|
|
||||||
from .const import DOMAIN
|
from .const import DOMAIN
|
||||||
|
@ -93,12 +94,14 @@ class ConfigFlow(config_entries.ConfigFlow, domain=DOMAIN):
|
||||||
step_id="user", data_schema=DATA_SCHEMA, errors=errors
|
step_id="user", data_schema=DATA_SCHEMA, errors=errors
|
||||||
)
|
)
|
||||||
|
|
||||||
async def async_step_zeroconf(self, discovery_info: zeroconf.ZeroconfServiceInfo):
|
async def async_step_zeroconf(
|
||||||
|
self, discovery_info: zeroconf.ZeroconfServiceInfo
|
||||||
|
) -> FlowResult:
|
||||||
"""Handle zeroconf discovery."""
|
"""Handle zeroconf discovery."""
|
||||||
self._host = discovery_info["host"]
|
self._host = discovery_info[zeroconf.ATTR_HOST]
|
||||||
self._port = discovery_info["port"]
|
self._port = discovery_info[zeroconf.ATTR_PORT]
|
||||||
self._name = discovery_info["properties"]["volumioName"]
|
self._name = discovery_info[zeroconf.ATTR_PROPERTIES]["volumioName"]
|
||||||
self._uuid = discovery_info["properties"]["UUID"]
|
self._uuid = discovery_info[zeroconf.ATTR_PROPERTIES]["UUID"]
|
||||||
|
|
||||||
await self._set_uid_and_abort()
|
await self._set_uid_and_abort()
|
||||||
|
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
from unittest.mock import patch
|
from unittest.mock import patch
|
||||||
|
|
||||||
from homeassistant import config_entries
|
from homeassistant import config_entries
|
||||||
|
from homeassistant.components import zeroconf
|
||||||
from homeassistant.components.volumio.config_flow import CannotConnectError
|
from homeassistant.components.volumio.config_flow import CannotConnectError
|
||||||
from homeassistant.components.volumio.const import DOMAIN
|
from homeassistant.components.volumio.const import DOMAIN
|
||||||
|
|
||||||
|
@ -16,17 +17,17 @@ TEST_CONNECTION = {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
TEST_DISCOVERY = {
|
TEST_DISCOVERY = zeroconf.ZeroconfServiceInfo(
|
||||||
"host": "1.1.1.1",
|
host="1.1.1.1",
|
||||||
"port": 3000,
|
port=3000,
|
||||||
"properties": {"volumioName": "discovered", "UUID": "2222-2222-2222-2222"},
|
properties={"volumioName": "discovered", "UUID": "2222-2222-2222-2222"},
|
||||||
}
|
)
|
||||||
|
|
||||||
TEST_DISCOVERY_RESULT = {
|
TEST_DISCOVERY_RESULT = {
|
||||||
"host": TEST_DISCOVERY["host"],
|
"host": TEST_DISCOVERY[zeroconf.ATTR_HOST],
|
||||||
"port": TEST_DISCOVERY["port"],
|
"port": TEST_DISCOVERY[zeroconf.ATTR_PORT],
|
||||||
"id": TEST_DISCOVERY["properties"]["UUID"],
|
"id": TEST_DISCOVERY[zeroconf.ATTR_PROPERTIES]["UUID"],
|
||||||
"name": TEST_DISCOVERY["properties"]["volumioName"],
|
"name": TEST_DISCOVERY[zeroconf.ATTR_PROPERTIES]["volumioName"],
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue