Strict typing Trafikverket Ferry (#72459)

This commit is contained in:
G Johansson 2022-06-15 01:35:29 +02:00 committed by GitHub
parent d25a5f3836
commit 32b61e15a1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 19 additions and 7 deletions

View File

@ -226,6 +226,7 @@ homeassistant.components.tplink.*
homeassistant.components.tolo.* homeassistant.components.tolo.*
homeassistant.components.tractive.* homeassistant.components.tractive.*
homeassistant.components.tradfri.* homeassistant.components.tradfri.*
homeassistant.components.trafikverket_ferry.*
homeassistant.components.trafikverket_train.* homeassistant.components.trafikverket_train.*
homeassistant.components.trafikverket_weatherstation.* homeassistant.components.trafikverket_weatherstation.*
homeassistant.components.tts.* homeassistant.components.tts.*

View File

@ -4,7 +4,7 @@ from __future__ import annotations
from collections.abc import Callable from collections.abc import Callable
from dataclasses import dataclass from dataclasses import dataclass
from datetime import datetime, timedelta from datetime import datetime, timedelta
from typing import Any from typing import Any, cast
from homeassistant.components.sensor import ( from homeassistant.components.sensor import (
SensorDeviceClass, SensorDeviceClass,
@ -55,21 +55,21 @@ SENSOR_TYPES: tuple[TrafikverketSensorEntityDescription, ...] = (
icon="mdi:clock", icon="mdi:clock",
device_class=SensorDeviceClass.TIMESTAMP, device_class=SensorDeviceClass.TIMESTAMP,
value_fn=lambda data: as_utc(data["departure_time"]), value_fn=lambda data: as_utc(data["departure_time"]),
info_fn=lambda data: data["departure_information"], info_fn=lambda data: cast(list[str], data["departure_information"]),
), ),
TrafikverketSensorEntityDescription( TrafikverketSensorEntityDescription(
key="departure_from", key="departure_from",
name="Departure From", name="Departure From",
icon="mdi:ferry", icon="mdi:ferry",
value_fn=lambda data: data["departure_from"], value_fn=lambda data: cast(str, data["departure_from"]),
info_fn=lambda data: data["departure_information"], info_fn=lambda data: cast(list[str], data["departure_information"]),
), ),
TrafikverketSensorEntityDescription( TrafikverketSensorEntityDescription(
key="departure_to", key="departure_to",
name="Departure To", name="Departure To",
icon="mdi:ferry", icon="mdi:ferry",
value_fn=lambda data: data["departure_to"], value_fn=lambda data: cast(str, data["departure_to"]),
info_fn=lambda data: data["departure_information"], info_fn=lambda data: cast(list[str], data["departure_information"]),
), ),
TrafikverketSensorEntityDescription( TrafikverketSensorEntityDescription(
key="departure_modified", key="departure_modified",
@ -77,7 +77,7 @@ SENSOR_TYPES: tuple[TrafikverketSensorEntityDescription, ...] = (
icon="mdi:clock", icon="mdi:clock",
device_class=SensorDeviceClass.TIMESTAMP, device_class=SensorDeviceClass.TIMESTAMP,
value_fn=lambda data: as_utc(data["departure_modified"]), value_fn=lambda data: as_utc(data["departure_modified"]),
info_fn=lambda data: data["departure_information"], info_fn=lambda data: cast(list[str], data["departure_information"]),
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
TrafikverketSensorEntityDescription( TrafikverketSensorEntityDescription(

View File

@ -2250,6 +2250,17 @@ no_implicit_optional = true
warn_return_any = true warn_return_any = true
warn_unreachable = true warn_unreachable = true
[mypy-homeassistant.components.trafikverket_ferry.*]
check_untyped_defs = true
disallow_incomplete_defs = true
disallow_subclassing_any = true
disallow_untyped_calls = true
disallow_untyped_decorators = true
disallow_untyped_defs = true
no_implicit_optional = true
warn_return_any = true
warn_unreachable = true
[mypy-homeassistant.components.trafikverket_train.*] [mypy-homeassistant.components.trafikverket_train.*]
check_untyped_defs = true check_untyped_defs = true
disallow_incomplete_defs = true disallow_incomplete_defs = true