From 65103d4515409c231d819c427becabfcc8a2b365 Mon Sep 17 00:00:00 2001 From: Joost Lekkerkerker Date: Sun, 27 Aug 2023 20:06:19 +0200 Subject: [PATCH] Improve Anova typing (#99146) --- homeassistant/components/anova/__init__.py | 6 +++--- homeassistant/components/anova/config_flow.py | 12 ++++++------ homeassistant/components/anova/entity.py | 9 +++++---- 3 files changed, 14 insertions(+), 13 deletions(-) diff --git a/homeassistant/components/anova/__init__.py b/homeassistant/components/anova/__init__.py index 2fee8a6beeb..6181d02025d 100644 --- a/homeassistant/components/anova/__init__.py +++ b/homeassistant/components/anova/__init__.py @@ -6,7 +6,7 @@ import logging from anova_wifi import AnovaApi, AnovaPrecisionCooker, InvalidLogin, NoDevicesFound from homeassistant.config_entries import ConfigEntry -from homeassistant.const import CONF_PASSWORD, CONF_USERNAME, Platform +from homeassistant.const import CONF_DEVICES, CONF_PASSWORD, CONF_USERNAME, Platform from homeassistant.core import HomeAssistant from homeassistant.helpers import aiohttp_client @@ -42,7 +42,7 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: device[1], api.jwt, ) - for device in entry.data["devices"] + for device in entry.data[CONF_DEVICES] ] try: new_devices = await api.get_devices() @@ -55,7 +55,7 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: entry, data={ **entry.data, - **{"devices": serialize_device_list(devices)}, + **{CONF_DEVICES: serialize_device_list(devices)}, }, ) coordinators = [AnovaCoordinator(hass, device) for device in devices] diff --git a/homeassistant/components/anova/config_flow.py b/homeassistant/components/anova/config_flow.py index 5d0d2dbf628..d0846fbffc7 100644 --- a/homeassistant/components/anova/config_flow.py +++ b/homeassistant/components/anova/config_flow.py @@ -4,16 +4,16 @@ from __future__ import annotations from anova_wifi import AnovaApi, InvalidLogin, NoDevicesFound import voluptuous as vol -from homeassistant import config_entries -from homeassistant.const import CONF_PASSWORD, CONF_USERNAME +from homeassistant.config_entries import ConfigFlow +from homeassistant.const import CONF_DEVICES, CONF_PASSWORD, CONF_USERNAME from homeassistant.data_entry_flow import FlowResult -from homeassistant.helpers import aiohttp_client +from homeassistant.helpers.aiohttp_client import async_get_clientsession from .const import DOMAIN from .util import serialize_device_list -class AnovaConfligFlow(config_entries.ConfigFlow, domain=DOMAIN): +class AnovaConfligFlow(ConfigFlow, domain=DOMAIN): """Sets up a config flow for Anova.""" VERSION = 1 @@ -25,7 +25,7 @@ class AnovaConfligFlow(config_entries.ConfigFlow, domain=DOMAIN): errors: dict[str, str] = {} if user_input is not None: api = AnovaApi( - aiohttp_client.async_get_clientsession(self.hass), + async_get_clientsession(self.hass), user_input[CONF_USERNAME], user_input[CONF_PASSWORD], ) @@ -48,7 +48,7 @@ class AnovaConfligFlow(config_entries.ConfigFlow, domain=DOMAIN): data={ CONF_USERNAME: api.username, CONF_PASSWORD: api.password, - "devices": device_list, + CONF_DEVICES: device_list, }, ) diff --git a/homeassistant/components/anova/entity.py b/homeassistant/components/anova/entity.py index fd104e194f1..c4d4ff2e2b2 100644 --- a/homeassistant/components/anova/entity.py +++ b/homeassistant/components/anova/entity.py @@ -8,18 +8,19 @@ from .coordinator import AnovaCoordinator class AnovaEntity(CoordinatorEntity[AnovaCoordinator], Entity): - """Defines a Anova entity.""" + """Defines an Anova entity.""" + + _attr_has_entity_name = True def __init__(self, coordinator: AnovaCoordinator) -> None: """Initialize the Anova entity.""" super().__init__(coordinator) self.device = coordinator.anova_device self._attr_device_info = coordinator.device_info - self._attr_has_entity_name = True -class AnovaDescriptionEntity(AnovaEntity, Entity): - """Defines a Anova entity that uses a description.""" +class AnovaDescriptionEntity(AnovaEntity): + """Defines an Anova entity that uses a description.""" def __init__( self, coordinator: AnovaCoordinator, description: EntityDescription