diff --git a/homeassistant/components/airzone/climate.py b/homeassistant/components/airzone/climate.py index ae62e57ed72..2ae151a3b44 100644 --- a/homeassistant/components/airzone/climate.py +++ b/homeassistant/components/airzone/climate.py @@ -29,19 +29,9 @@ from aioairzone.exceptions import AirzoneError from homeassistant.components.climate import ClimateEntity from homeassistant.components.climate.const import ( - CURRENT_HVAC_COOL, - CURRENT_HVAC_DRY, - CURRENT_HVAC_FAN, - CURRENT_HVAC_HEAT, - CURRENT_HVAC_IDLE, - CURRENT_HVAC_OFF, - HVAC_MODE_COOL, - HVAC_MODE_DRY, - HVAC_MODE_FAN_ONLY, - HVAC_MODE_HEAT, - HVAC_MODE_HEAT_COOL, - HVAC_MODE_OFF, ClimateEntityFeature, + HVACAction, + HVACMode, ) from homeassistant.config_entries import ConfigEntry from homeassistant.const import ATTR_TEMPERATURE @@ -56,28 +46,28 @@ from .coordinator import AirzoneUpdateCoordinator _LOGGER = logging.getLogger(__name__) -HVAC_ACTION_LIB_TO_HASS: Final[dict[OperationMode, str]] = { - OperationMode.STOP: CURRENT_HVAC_OFF, - OperationMode.COOLING: CURRENT_HVAC_COOL, - OperationMode.HEATING: CURRENT_HVAC_HEAT, - OperationMode.FAN: CURRENT_HVAC_FAN, - OperationMode.DRY: CURRENT_HVAC_DRY, +HVAC_ACTION_LIB_TO_HASS: Final[dict[OperationMode, HVACAction]] = { + OperationMode.STOP: HVACAction.OFF, + OperationMode.COOLING: HVACAction.COOLING, + OperationMode.HEATING: HVACAction.HEATING, + OperationMode.FAN: HVACAction.FAN, + OperationMode.DRY: HVACAction.DRYING, } -HVAC_MODE_LIB_TO_HASS: Final[dict[OperationMode, str]] = { - OperationMode.STOP: HVAC_MODE_OFF, - OperationMode.COOLING: HVAC_MODE_COOL, - OperationMode.HEATING: HVAC_MODE_HEAT, - OperationMode.FAN: HVAC_MODE_FAN_ONLY, - OperationMode.DRY: HVAC_MODE_DRY, - OperationMode.AUTO: HVAC_MODE_HEAT_COOL, +HVAC_MODE_LIB_TO_HASS: Final[dict[OperationMode, HVACMode]] = { + OperationMode.STOP: HVACMode.OFF, + OperationMode.COOLING: HVACMode.COOL, + OperationMode.HEATING: HVACMode.HEAT, + OperationMode.FAN: HVACMode.FAN_ONLY, + OperationMode.DRY: HVACMode.DRY, + OperationMode.AUTO: HVACMode.HEAT_COOL, } -HVAC_MODE_HASS_TO_LIB: Final[dict[str, OperationMode]] = { - HVAC_MODE_OFF: OperationMode.STOP, - HVAC_MODE_COOL: OperationMode.COOLING, - HVAC_MODE_HEAT: OperationMode.HEATING, - HVAC_MODE_FAN_ONLY: OperationMode.FAN, - HVAC_MODE_DRY: OperationMode.DRY, - HVAC_MODE_HEAT_COOL: OperationMode.AUTO, +HVAC_MODE_HASS_TO_LIB: Final[dict[HVACMode, OperationMode]] = { + HVACMode.OFF: OperationMode.STOP, + HVACMode.COOL: OperationMode.COOLING, + HVACMode.HEAT: OperationMode.HEATING, + HVACMode.FAN_ONLY: OperationMode.FAN, + HVACMode.DRY: OperationMode.DRY, + HVACMode.HEAT_COOL: OperationMode.AUTO, } @@ -154,10 +144,10 @@ class AirzoneClimate(AirzoneZoneEntity, ClimateEntity): } await self._async_update_hvac_params(params) - async def async_set_hvac_mode(self, hvac_mode: str) -> None: + async def async_set_hvac_mode(self, hvac_mode: HVACMode) -> None: """Set hvac mode.""" params = {} - if hvac_mode == HVAC_MODE_OFF: + if hvac_mode == HVACMode.OFF: params[API_ON] = 0 else: mode = HVAC_MODE_HASS_TO_LIB[hvac_mode] @@ -195,8 +185,8 @@ class AirzoneClimate(AirzoneZoneEntity, ClimateEntity): if self.get_airzone_value(AZD_DEMAND): self._attr_hvac_action = HVAC_ACTION_LIB_TO_HASS[mode] else: - self._attr_hvac_action = CURRENT_HVAC_IDLE + self._attr_hvac_action = HVACAction.IDLE else: - self._attr_hvac_action = CURRENT_HVAC_OFF - self._attr_hvac_mode = HVAC_MODE_OFF + self._attr_hvac_action = HVACAction.OFF + self._attr_hvac_mode = HVACMode.OFF self._attr_target_temperature = self.get_airzone_value(AZD_TEMP_SET) diff --git a/tests/components/airzone/test_climate.py b/tests/components/airzone/test_climate.py index 0cd8bda278d..2128d2818e7 100644 --- a/tests/components/airzone/test_climate.py +++ b/tests/components/airzone/test_climate.py @@ -1,5 +1,4 @@ """The climate tests for the Airzone platform.""" - from unittest.mock import patch from aioairzone.common import OperationMode @@ -24,17 +23,11 @@ from homeassistant.components.climate.const import ( ATTR_MAX_TEMP, ATTR_MIN_TEMP, ATTR_TARGET_TEMP_STEP, - CURRENT_HVAC_HEAT, - CURRENT_HVAC_IDLE, - CURRENT_HVAC_OFF, DOMAIN as CLIMATE_DOMAIN, - HVAC_MODE_COOL, - HVAC_MODE_DRY, - HVAC_MODE_FAN_ONLY, - HVAC_MODE_HEAT, - HVAC_MODE_OFF, SERVICE_SET_HVAC_MODE, SERVICE_SET_TEMPERATURE, + HVACAction, + HVACMode, ) from homeassistant.const import ( ATTR_ENTITY_ID, @@ -54,16 +47,16 @@ async def test_airzone_create_climates(hass: HomeAssistant) -> None: await async_init_integration(hass) state = hass.states.get("climate.despacho") - assert state.state == HVAC_MODE_OFF + assert state.state == HVACMode.OFF assert state.attributes.get(ATTR_CURRENT_HUMIDITY) == 36 assert state.attributes.get(ATTR_CURRENT_TEMPERATURE) == 21.2 - assert state.attributes.get(ATTR_HVAC_ACTION) == CURRENT_HVAC_OFF + assert state.attributes.get(ATTR_HVAC_ACTION) == HVACAction.OFF assert state.attributes.get(ATTR_HVAC_MODES) == [ - HVAC_MODE_OFF, - HVAC_MODE_FAN_ONLY, - HVAC_MODE_COOL, - HVAC_MODE_HEAT, - HVAC_MODE_DRY, + HVACMode.OFF, + HVACMode.FAN_ONLY, + HVACMode.COOL, + HVACMode.HEAT, + HVACMode.DRY, ] assert state.attributes.get(ATTR_MAX_TEMP) == 30 assert state.attributes.get(ATTR_MIN_TEMP) == 15 @@ -71,16 +64,16 @@ async def test_airzone_create_climates(hass: HomeAssistant) -> None: assert state.attributes.get(ATTR_TEMPERATURE) == 19.4 state = hass.states.get("climate.dorm_1") - assert state.state == HVAC_MODE_HEAT + assert state.state == HVACMode.HEAT assert state.attributes.get(ATTR_CURRENT_HUMIDITY) == 35 assert state.attributes.get(ATTR_CURRENT_TEMPERATURE) == 20.8 - assert state.attributes.get(ATTR_HVAC_ACTION) == CURRENT_HVAC_IDLE + assert state.attributes.get(ATTR_HVAC_ACTION) == HVACAction.IDLE assert state.attributes.get(ATTR_HVAC_MODES) == [ - HVAC_MODE_OFF, - HVAC_MODE_FAN_ONLY, - HVAC_MODE_COOL, - HVAC_MODE_HEAT, - HVAC_MODE_DRY, + HVACMode.OFF, + HVACMode.FAN_ONLY, + HVACMode.COOL, + HVACMode.HEAT, + HVACMode.DRY, ] assert state.attributes.get(ATTR_MAX_TEMP) == 30 assert state.attributes.get(ATTR_MIN_TEMP) == 15 @@ -88,16 +81,16 @@ async def test_airzone_create_climates(hass: HomeAssistant) -> None: assert state.attributes.get(ATTR_TEMPERATURE) == 19.3 state = hass.states.get("climate.dorm_2") - assert state.state == HVAC_MODE_OFF + assert state.state == HVACMode.OFF assert state.attributes.get(ATTR_CURRENT_HUMIDITY) == 40 assert state.attributes.get(ATTR_CURRENT_TEMPERATURE) == 20.5 - assert state.attributes.get(ATTR_HVAC_ACTION) == CURRENT_HVAC_OFF + assert state.attributes.get(ATTR_HVAC_ACTION) == HVACAction.OFF assert state.attributes.get(ATTR_HVAC_MODES) == [ - HVAC_MODE_OFF, - HVAC_MODE_FAN_ONLY, - HVAC_MODE_COOL, - HVAC_MODE_HEAT, - HVAC_MODE_DRY, + HVACMode.OFF, + HVACMode.FAN_ONLY, + HVACMode.COOL, + HVACMode.HEAT, + HVACMode.DRY, ] assert state.attributes.get(ATTR_MAX_TEMP) == 30 assert state.attributes.get(ATTR_MIN_TEMP) == 15 @@ -105,16 +98,16 @@ async def test_airzone_create_climates(hass: HomeAssistant) -> None: assert state.attributes.get(ATTR_TEMPERATURE) == 19.5 state = hass.states.get("climate.dorm_ppal") - assert state.state == HVAC_MODE_HEAT + assert state.state == HVACMode.HEAT assert state.attributes.get(ATTR_CURRENT_HUMIDITY) == 39 assert state.attributes.get(ATTR_CURRENT_TEMPERATURE) == 21.1 - assert state.attributes.get(ATTR_HVAC_ACTION) == CURRENT_HVAC_HEAT + assert state.attributes.get(ATTR_HVAC_ACTION) == HVACAction.HEATING assert state.attributes.get(ATTR_HVAC_MODES) == [ - HVAC_MODE_OFF, - HVAC_MODE_FAN_ONLY, - HVAC_MODE_COOL, - HVAC_MODE_HEAT, - HVAC_MODE_DRY, + HVACMode.OFF, + HVACMode.FAN_ONLY, + HVACMode.COOL, + HVACMode.HEAT, + HVACMode.DRY, ] assert state.attributes.get(ATTR_MAX_TEMP) == 30 assert state.attributes.get(ATTR_MIN_TEMP) == 15 @@ -122,16 +115,16 @@ async def test_airzone_create_climates(hass: HomeAssistant) -> None: assert state.attributes.get(ATTR_TEMPERATURE) == 19.2 state = hass.states.get("climate.salon") - assert state.state == HVAC_MODE_OFF + assert state.state == HVACMode.OFF assert state.attributes.get(ATTR_CURRENT_HUMIDITY) == 34 assert state.attributes.get(ATTR_CURRENT_TEMPERATURE) == 19.6 - assert state.attributes.get(ATTR_HVAC_ACTION) == CURRENT_HVAC_OFF + assert state.attributes.get(ATTR_HVAC_ACTION) == HVACAction.OFF assert state.attributes.get(ATTR_HVAC_MODES) == [ - HVAC_MODE_OFF, - HVAC_MODE_FAN_ONLY, - HVAC_MODE_COOL, - HVAC_MODE_HEAT, - HVAC_MODE_DRY, + HVACMode.OFF, + HVACMode.FAN_ONLY, + HVACMode.COOL, + HVACMode.HEAT, + HVACMode.DRY, ] assert state.attributes.get(ATTR_MAX_TEMP) == 30 assert state.attributes.get(ATTR_MIN_TEMP) == 15 @@ -167,7 +160,7 @@ async def test_airzone_climate_turn_on_off(hass: HomeAssistant) -> None: ) state = hass.states.get("climate.salon") - assert state.state == HVAC_MODE_HEAT + assert state.state == HVACMode.HEAT HVAC_MOCK = { API_DATA: [ @@ -192,7 +185,7 @@ async def test_airzone_climate_turn_on_off(hass: HomeAssistant) -> None: ) state = hass.states.get("climate.salon") - assert state.state == HVAC_MODE_OFF + assert state.state == HVACMode.OFF async def test_airzone_climate_set_hvac_mode(hass: HomeAssistant) -> None: @@ -219,13 +212,13 @@ async def test_airzone_climate_set_hvac_mode(hass: HomeAssistant) -> None: SERVICE_SET_HVAC_MODE, { ATTR_ENTITY_ID: "climate.salon", - ATTR_HVAC_MODE: HVAC_MODE_COOL, + ATTR_HVAC_MODE: HVACMode.COOL, }, blocking=True, ) state = hass.states.get("climate.salon") - assert state.state == HVAC_MODE_COOL + assert state.state == HVACMode.COOL HVAC_MOCK_2 = { API_DATA: [ @@ -245,13 +238,13 @@ async def test_airzone_climate_set_hvac_mode(hass: HomeAssistant) -> None: SERVICE_SET_HVAC_MODE, { ATTR_ENTITY_ID: "climate.salon", - ATTR_HVAC_MODE: HVAC_MODE_OFF, + ATTR_HVAC_MODE: HVACMode.OFF, }, blocking=True, ) state = hass.states.get("climate.salon") - assert state.state == HVAC_MODE_OFF + assert state.state == HVACMode.OFF async def test_airzone_climate_set_hvac_slave_error(hass: HomeAssistant) -> None: @@ -278,13 +271,13 @@ async def test_airzone_climate_set_hvac_slave_error(hass: HomeAssistant) -> None SERVICE_SET_HVAC_MODE, { ATTR_ENTITY_ID: "climate.dorm_2", - ATTR_HVAC_MODE: HVAC_MODE_COOL, + ATTR_HVAC_MODE: HVACMode.COOL, }, blocking=True, ) state = hass.states.get("climate.dorm_2") - assert state.state == HVAC_MODE_OFF + assert state.state == HVACMode.OFF async def test_airzone_climate_set_temp(hass: HomeAssistant) -> None: