Add strict typing to islamic prayer times (#99585)

* Add strict typing to islamic prayer times

* fix mypy errors
This commit is contained in:
Rami Mosleh 2023-09-07 13:16:31 +03:00 committed by GitHub
parent e5210c5823
commit 0cc2c27115
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 15 additions and 3 deletions

View File

@ -188,6 +188,7 @@ homeassistant.components.input_select.*
homeassistant.components.integration.*
homeassistant.components.ipp.*
homeassistant.components.iqvia.*
homeassistant.components.islamic_prayer_times.*
homeassistant.components.isy994.*
homeassistant.components.jellyfin.*
homeassistant.components.jewish_calendar.*

View File

@ -3,6 +3,7 @@ from __future__ import annotations
from datetime import datetime, timedelta
import logging
from typing import Any, cast
from prayer_times_calculator import PrayerTimesCalculator, exceptions
from requests.exceptions import ConnectionError as ConnError
@ -37,7 +38,7 @@ class IslamicPrayerDataUpdateCoordinator(DataUpdateCoordinator[dict[str, datetim
"""Return the calculation method."""
return self.config_entry.options.get(CONF_CALC_METHOD, DEFAULT_CALC_METHOD)
def get_new_prayer_times(self) -> dict[str, str]:
def get_new_prayer_times(self) -> dict[str, Any]:
"""Fetch prayer times for today."""
calc = PrayerTimesCalculator(
latitude=self.hass.config.latitude,
@ -45,7 +46,7 @@ class IslamicPrayerDataUpdateCoordinator(DataUpdateCoordinator[dict[str, datetim
calculation_method=self.calc_method,
date=str(dt_util.now().date()),
)
return calc.fetch_prayer_times()
return cast(dict[str, Any], calc.fetch_prayer_times())
@callback
def async_schedule_future_update(self, midnight_dt: datetime) -> None:
@ -98,7 +99,7 @@ class IslamicPrayerDataUpdateCoordinator(DataUpdateCoordinator[dict[str, datetim
self.hass, self.async_request_update, next_update_at
)
async def async_request_update(self, *_) -> None:
async def async_request_update(self, _: datetime) -> None:
"""Request update from coordinator."""
await self.async_request_refresh()

View File

@ -1642,6 +1642,16 @@ disallow_untyped_defs = true
warn_return_any = true
warn_unreachable = true
[mypy-homeassistant.components.islamic_prayer_times.*]
check_untyped_defs = true
disallow_incomplete_defs = true
disallow_subclassing_any = true
disallow_untyped_calls = true
disallow_untyped_decorators = true
disallow_untyped_defs = true
warn_return_any = true
warn_unreachable = true
[mypy-homeassistant.components.isy994.*]
check_untyped_defs = true
disallow_incomplete_defs = true