From 7aacdec8e1c6cc245be890bef26dcdf52ab5a7ba Mon Sep 17 00:00:00 2001 From: Maximilian <43999966+DeerMaximum@users.noreply.github.com> Date: Sun, 2 Oct 2022 17:57:32 +0200 Subject: [PATCH] Address late review of nina (#79467) * Address review * Remove unused attribute --- homeassistant/components/nina/__init__.py | 12 ++++++------ homeassistant/components/nina/binary_sensor.py | 6 +++--- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/homeassistant/components/nina/__init__.py b/homeassistant/components/nina/__init__.py index 75ec2cdfe94..f03a2c765cc 100644 --- a/homeassistant/components/nina/__init__.py +++ b/homeassistant/components/nina/__init__.py @@ -2,7 +2,6 @@ from __future__ import annotations from dataclasses import dataclass -from typing import Any from async_timeout import timeout from pynina import ApiError, Nina @@ -63,7 +62,9 @@ class NinaWarningData: is_valid: bool -class NINADataUpdateCoordinator(DataUpdateCoordinator): +class NINADataUpdateCoordinator( + DataUpdateCoordinator[dict[str, list[NinaWarningData]]] +): """Class to manage fetching NINA data API.""" def __init__( @@ -72,7 +73,6 @@ class NINADataUpdateCoordinator(DataUpdateCoordinator): """Initialize.""" self._regions: dict[str, str] = regions self._nina: Nina = Nina(async_get_clientsession(hass)) - self.warnings: dict[str, Any] = {} self.corona_filter: bool = corona_filter for region in regions: @@ -80,7 +80,7 @@ class NINADataUpdateCoordinator(DataUpdateCoordinator): super().__init__(hass, _LOGGER, name=DOMAIN, update_interval=SCAN_INTERVAL) - async def _async_update_data(self) -> dict[str, Any]: + async def _async_update_data(self) -> dict[str, list[NinaWarningData]]: """Update data.""" async with timeout(10): try: @@ -89,10 +89,10 @@ class NINADataUpdateCoordinator(DataUpdateCoordinator): raise UpdateFailed(err) from err return self._parse_data() - def _parse_data(self) -> dict[str, Any]: + def _parse_data(self) -> dict[str, list[NinaWarningData]]: """Parse warning data.""" - return_data: dict[str, Any] = {} + return_data: dict[str, list[NinaWarningData]] = {} for region_id, raw_warnings in self._nina.warnings.items(): warnings_for_regions: list[NinaWarningData] = [] diff --git a/homeassistant/components/nina/binary_sensor.py b/homeassistant/components/nina/binary_sensor.py index 4cbb3b6887a..76280ab159e 100644 --- a/homeassistant/components/nina/binary_sensor.py +++ b/homeassistant/components/nina/binary_sensor.py @@ -12,7 +12,7 @@ from homeassistant.core import HomeAssistant from homeassistant.helpers.entity_platform import AddEntitiesCallback from homeassistant.helpers.update_coordinator import CoordinatorEntity -from . import NINADataUpdateCoordinator, NinaWarningData +from . import NINADataUpdateCoordinator from .const import ( ATTR_DESCRIPTION, ATTR_EXPIRES, @@ -75,7 +75,7 @@ class NINAMessage(CoordinatorEntity[NINADataUpdateCoordinator], BinarySensorEnti if not len(self.coordinator.data[self._region]) > self._warning_index: return False - data: NinaWarningData = self.coordinator.data[self._region][self._warning_index] + data = self.coordinator.data[self._region][self._warning_index] return data.is_valid @@ -85,7 +85,7 @@ class NINAMessage(CoordinatorEntity[NINADataUpdateCoordinator], BinarySensorEnti if not self.is_on: return {} - data: NinaWarningData = self.coordinator.data[self._region][self._warning_index] + data = self.coordinator.data[self._region][self._warning_index] return { ATTR_HEADLINE: data.headline,