Skip to content

Commit 0a43fab

Browse files
committed
Break out _homekit_translate() function
1 parent 79a29f8 commit 0a43fab

File tree

1 file changed

+12
-8
lines changed

1 file changed

+12
-8
lines changed

custom_components/plugwise/climate.py

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -348,14 +348,18 @@ async def async_set_hvac_mode(self, hvac_mode: HVACMode) -> None:
348348
elif self.hvac_mode == HVACMode.OFF and self._previous_action_mode:
349349
await self.coordinator.api.set_regulation_mode(self._previous_action_mode)
350350
else:
351-
self._homekit_mode = hvac_mode # pragma: no cover
352-
if self._homekit_mode == HVACMode.OFF: # pragma: no cover
353-
await self.async_set_preset_mode(PRESET_AWAY) # pragma: no cover
354-
if (
355-
self._homekit_mode in [HVACMode.HEAT, HVACMode.HEAT_COOL]
356-
and self.device.get(ACTIVE_PRESET) == PRESET_AWAY
357-
): # pragma: no cover
358-
await self.async_set_preset_mode(PRESET_HOME) # pragma: no cover
351+
await self._homekit_translate(hvac_mode)
352+
353+
async def _homekit_translate(self, mode) -> None:
354+
"""Mimic HomeKit by setting a suitable preset."""
355+
self._homekit_mode = mode # pragma: no cover
356+
if self._homekit_mode == HVACMode.OFF: # pragma: no cover
357+
await self.async_set_preset_mode(PRESET_AWAY) # pragma: no cover
358+
if (
359+
self._homekit_mode in [HVACMode.HEAT, HVACMode.HEAT_COOL]
360+
and self.device.get(ACTIVE_PRESET) == PRESET_AWAY
361+
): # pragma: no cover
362+
await self.async_set_preset_mode(PRESET_HOME) # pragma: no cover
359363

360364
@plugwise_command
361365
async def async_set_preset_mode(self, preset_mode: str) -> None:

0 commit comments

Comments
 (0)