Fix review comments in fglair (#124710)

* Replace if len() == 0 with if not

* Replace list + filter with list comprehensions

* Move consts that are only used in one module to said module
This commit is contained in:
Antoine Reversat 2024-08-27 10:26:18 -04:00 committed by GitHub
parent 318259689f
commit de8bbaadd1
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 49 additions and 56 deletions

View File

@ -2,9 +2,23 @@
from typing import Any
from ayla_iot_unofficial.fujitsu_hvac import Capability, FujitsuHVAC
from ayla_iot_unofficial.fujitsu_hvac import (
Capability,
FanSpeed,
FujitsuHVAC,
OpMode,
SwingMode,
)
from homeassistant.components.climate import (
FAN_AUTO,
FAN_HIGH,
FAN_LOW,
FAN_MEDIUM,
SWING_BOTH,
SWING_HORIZONTAL,
SWING_OFF,
SWING_VERTICAL,
ClimateEntity,
ClimateEntityFeature,
HVACMode,
@ -16,17 +30,35 @@ from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.update_coordinator import CoordinatorEntity
from . import FGLairConfigEntry
from .const import (
DOMAIN,
FUJI_TO_HA_FAN,
FUJI_TO_HA_HVAC,
FUJI_TO_HA_SWING,
HA_TO_FUJI_FAN,
HA_TO_FUJI_HVAC,
HA_TO_FUJI_SWING,
)
from .const import DOMAIN
from .coordinator import FGLairCoordinator
HA_TO_FUJI_FAN = {
FAN_LOW: FanSpeed.LOW,
FAN_MEDIUM: FanSpeed.MEDIUM,
FAN_HIGH: FanSpeed.HIGH,
FAN_AUTO: FanSpeed.AUTO,
}
FUJI_TO_HA_FAN = {value: key for key, value in HA_TO_FUJI_FAN.items()}
HA_TO_FUJI_HVAC = {
HVACMode.OFF: OpMode.OFF,
HVACMode.HEAT: OpMode.HEAT,
HVACMode.COOL: OpMode.COOL,
HVACMode.HEAT_COOL: OpMode.AUTO,
HVACMode.DRY: OpMode.DRY,
HVACMode.FAN_ONLY: OpMode.FAN,
}
FUJI_TO_HA_HVAC = {value: key for key, value in HA_TO_FUJI_HVAC.items()}
HA_TO_FUJI_SWING = {
SWING_OFF: SwingMode.OFF,
SWING_VERTICAL: SwingMode.SWING_VERTICAL,
SWING_HORIZONTAL: SwingMode.SWING_HORIZONTAL,
SWING_BOTH: SwingMode.SWING_BOTH,
}
FUJI_TO_HA_SWING = {value: key for key, value in HA_TO_FUJI_SWING.items()}
async def async_setup_entry(
hass: HomeAssistant,

View File

@ -70,7 +70,7 @@ class FGLairConfigFlow(ConfigFlow, domain=DOMAIN):
self._abort_if_unique_id_configured()
errors = await self._async_validate_credentials(user_input)
if len(errors) == 0:
if not errors:
return self.async_create_entry(
title=f"FGLair ({user_input[CONF_USERNAME]})",
data=user_input,

View File

@ -6,19 +6,6 @@ from ayla_iot_unofficial.fujitsu_consts import ( # noqa: F401
FGLAIR_APP_ID,
FGLAIR_APP_SECRET,
)
from ayla_iot_unofficial.fujitsu_hvac import FanSpeed, OpMode, SwingMode
from homeassistant.components.climate import (
FAN_AUTO,
FAN_HIGH,
FAN_LOW,
FAN_MEDIUM,
SWING_BOTH,
SWING_HORIZONTAL,
SWING_OFF,
SWING_VERTICAL,
HVACMode,
)
API_TIMEOUT = 10
API_REFRESH = timedelta(minutes=5)
@ -26,29 +13,3 @@ API_REFRESH = timedelta(minutes=5)
DOMAIN = "fujitsu_fglair"
CONF_EUROPE = "is_europe"
HA_TO_FUJI_FAN = {
FAN_LOW: FanSpeed.LOW,
FAN_MEDIUM: FanSpeed.MEDIUM,
FAN_HIGH: FanSpeed.HIGH,
FAN_AUTO: FanSpeed.AUTO,
}
FUJI_TO_HA_FAN = {value: key for key, value in HA_TO_FUJI_FAN.items()}
HA_TO_FUJI_HVAC = {
HVACMode.OFF: OpMode.OFF,
HVACMode.HEAT: OpMode.HEAT,
HVACMode.COOL: OpMode.COOL,
HVACMode.HEAT_COOL: OpMode.AUTO,
HVACMode.DRY: OpMode.DRY,
HVACMode.FAN_ONLY: OpMode.FAN,
}
FUJI_TO_HA_HVAC = {value: key for key, value in HA_TO_FUJI_HVAC.items()}
HA_TO_FUJI_SWING = {
SWING_OFF: SwingMode.OFF,
SWING_VERTICAL: SwingMode.SWING_VERTICAL,
SWING_HORIZONTAL: SwingMode.SWING_HORIZONTAL,
SWING_BOTH: SwingMode.SWING_BOTH,
}
FUJI_TO_HA_SWING = {value: key for key, value in HA_TO_FUJI_SWING.items()}

View File

@ -47,12 +47,12 @@ class FGLairCoordinator(DataUpdateCoordinator[dict[str, FujitsuHVAC]]):
except AylaAuthError as e:
raise ConfigEntryAuthFailed("Credentials expired for Ayla IoT API") from e
if len(listening_entities) == 0:
devices = list(filter(lambda x: isinstance(x, FujitsuHVAC), devices))
if not listening_entities:
devices = [dev for dev in devices if isinstance(dev, FujitsuHVAC)]
else:
devices = list(
filter(lambda x: x.device_serial_number in listening_entities, devices)
)
devices = [
dev for dev in devices if dev.device_serial_number in listening_entities
]
try:
for dev in devices:

View File

@ -18,7 +18,7 @@ from homeassistant.components.climate import (
SWING_BOTH,
HVACMode,
)
from homeassistant.components.fujitsu_fglair.const import (
from homeassistant.components.fujitsu_fglair.climate import (
HA_TO_FUJI_FAN,
HA_TO_FUJI_HVAC,
HA_TO_FUJI_SWING,