Use dataclass properties in nanoleaf discovery (#60580)

Co-authored-by: epenet <epenet@users.noreply.github.com>
pull/60653/head
epenet 2021-11-30 17:05:50 +01:00 committed by GitHub
parent 8a9f197918
commit be89c07cac
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 9 deletions

View File

@ -106,20 +106,18 @@ class ConfigFlow(config_entries.ConfigFlow, domain=DOMAIN):
) -> FlowResult:
"""Handle Nanoleaf Homekit and Zeroconf discovery."""
return await self._async_discovery_handler(
discovery_info[zeroconf.ATTR_HOST],
discovery_info[zeroconf.ATTR_NAME].replace(
f".{discovery_info[zeroconf.ATTR_TYPE]}", ""
),
discovery_info[zeroconf.ATTR_PROPERTIES][zeroconf.ATTR_PROPERTIES_ID],
discovery_info.host,
discovery_info.name.replace(f".{discovery_info.type}", ""),
discovery_info.properties[zeroconf.ATTR_PROPERTIES_ID],
)
async def async_step_ssdp(self, discovery_info: ssdp.SsdpServiceInfo) -> FlowResult:
"""Handle Nanoleaf SSDP discovery."""
_LOGGER.debug("SSDP discovered: %s", discovery_info)
return await self._async_discovery_handler(
discovery_info["_host"],
discovery_info["nl-devicename"],
discovery_info["nl-deviceid"],
discovery_info.ssdp_headers["_host"],
discovery_info.ssdp_headers["nl-devicename"],
discovery_info.ssdp_headers["nl-deviceid"],
)
async def _async_discovery_handler(

View File

@ -465,7 +465,8 @@ async def test_ssdp_discovery(hass: HomeAssistant) -> None:
data=ssdp.SsdpServiceInfo(
ssdp_usn="mock_usn",
ssdp_st="mock_st",
upnp={
upnp={},
ssdp_headers={
"_host": TEST_HOST,
"nl-devicename": TEST_NAME,
"nl-deviceid": TEST_DEVICE_ID,