mirror of
https://github.com/home-assistant/core.git
synced 2025-11-09 02:49:40 +00:00
Improve fans in homekit_controller (#74440)
This commit is contained in:
@@ -10,6 +10,7 @@ from aiohomekit.model.services import ServicesTypes
|
||||
|
||||
from homeassistant.components.climate.const import (
|
||||
DOMAIN,
|
||||
SERVICE_SET_FAN_MODE,
|
||||
SERVICE_SET_HUMIDITY,
|
||||
SERVICE_SET_HVAC_MODE,
|
||||
SERVICE_SET_SWING_MODE,
|
||||
@@ -32,6 +33,9 @@ def create_thermostat_service(accessory):
|
||||
char = service.add_char(CharacteristicsTypes.HEATING_COOLING_CURRENT)
|
||||
char.value = 0
|
||||
|
||||
char = service.add_char(CharacteristicsTypes.FAN_STATE_TARGET)
|
||||
char.value = 0
|
||||
|
||||
char = service.add_char(CharacteristicsTypes.TEMPERATURE_COOLING_THRESHOLD)
|
||||
char.minValue = 15
|
||||
char.maxValue = 40
|
||||
@@ -144,6 +148,32 @@ async def test_climate_change_thermostat_state(hass, utcnow):
|
||||
},
|
||||
)
|
||||
|
||||
await hass.services.async_call(
|
||||
DOMAIN,
|
||||
SERVICE_SET_FAN_MODE,
|
||||
{"entity_id": "climate.testdevice", "fan_mode": "on"},
|
||||
blocking=True,
|
||||
)
|
||||
helper.async_assert_service_values(
|
||||
ServicesTypes.THERMOSTAT,
|
||||
{
|
||||
CharacteristicsTypes.FAN_STATE_TARGET: 0,
|
||||
},
|
||||
)
|
||||
|
||||
await hass.services.async_call(
|
||||
DOMAIN,
|
||||
SERVICE_SET_FAN_MODE,
|
||||
{"entity_id": "climate.testdevice", "fan_mode": "auto"},
|
||||
blocking=True,
|
||||
)
|
||||
helper.async_assert_service_values(
|
||||
ServicesTypes.THERMOSTAT,
|
||||
{
|
||||
CharacteristicsTypes.FAN_STATE_TARGET: 1,
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
async def test_climate_check_min_max_values_per_mode(hass, utcnow):
|
||||
"""Test that we we get the appropriate min/max values for each mode."""
|
||||
|
||||
Reference in New Issue
Block a user