mirror of
https://github.com/home-assistant/core.git
synced 2025-07-28 23:57:06 +00:00
Map SmartThings auto mode correctly (#145061)
This commit is contained in:
parent
e80069545f
commit
87b60967a6
@ -31,7 +31,7 @@ from .entity import SmartThingsEntity
|
|||||||
|
|
||||||
ATTR_OPERATION_STATE = "operation_state"
|
ATTR_OPERATION_STATE = "operation_state"
|
||||||
MODE_TO_STATE = {
|
MODE_TO_STATE = {
|
||||||
"auto": HVACMode.HEAT_COOL,
|
"auto": HVACMode.AUTO,
|
||||||
"cool": HVACMode.COOL,
|
"cool": HVACMode.COOL,
|
||||||
"eco": HVACMode.AUTO,
|
"eco": HVACMode.AUTO,
|
||||||
"rush hour": HVACMode.AUTO,
|
"rush hour": HVACMode.AUTO,
|
||||||
@ -40,7 +40,7 @@ MODE_TO_STATE = {
|
|||||||
"off": HVACMode.OFF,
|
"off": HVACMode.OFF,
|
||||||
}
|
}
|
||||||
STATE_TO_MODE = {
|
STATE_TO_MODE = {
|
||||||
HVACMode.HEAT_COOL: "auto",
|
HVACMode.AUTO: "auto",
|
||||||
HVACMode.COOL: "cool",
|
HVACMode.COOL: "cool",
|
||||||
HVACMode.HEAT: "heat",
|
HVACMode.HEAT: "heat",
|
||||||
HVACMode.OFF: "off",
|
HVACMode.OFF: "off",
|
||||||
@ -58,7 +58,7 @@ OPERATING_STATE_TO_ACTION = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
AC_MODE_TO_STATE = {
|
AC_MODE_TO_STATE = {
|
||||||
"auto": HVACMode.HEAT_COOL,
|
"auto": HVACMode.AUTO,
|
||||||
"cool": HVACMode.COOL,
|
"cool": HVACMode.COOL,
|
||||||
"dry": HVACMode.DRY,
|
"dry": HVACMode.DRY,
|
||||||
"coolClean": HVACMode.COOL,
|
"coolClean": HVACMode.COOL,
|
||||||
@ -70,7 +70,7 @@ AC_MODE_TO_STATE = {
|
|||||||
"wind": HVACMode.FAN_ONLY,
|
"wind": HVACMode.FAN_ONLY,
|
||||||
}
|
}
|
||||||
STATE_TO_AC_MODE = {
|
STATE_TO_AC_MODE = {
|
||||||
HVACMode.HEAT_COOL: "auto",
|
HVACMode.AUTO: "auto",
|
||||||
HVACMode.COOL: "cool",
|
HVACMode.COOL: "cool",
|
||||||
HVACMode.DRY: "dry",
|
HVACMode.DRY: "dry",
|
||||||
HVACMode.HEAT: "heat",
|
HVACMode.HEAT: "heat",
|
||||||
|
@ -146,7 +146,7 @@
|
|||||||
<HVACMode.COOL: 'cool'>,
|
<HVACMode.COOL: 'cool'>,
|
||||||
<HVACMode.DRY: 'dry'>,
|
<HVACMode.DRY: 'dry'>,
|
||||||
<HVACMode.FAN_ONLY: 'fan_only'>,
|
<HVACMode.FAN_ONLY: 'fan_only'>,
|
||||||
<HVACMode.HEAT_COOL: 'heat_cool'>,
|
<HVACMode.AUTO: 'auto'>,
|
||||||
<HVACMode.HEAT: 'heat'>,
|
<HVACMode.HEAT: 'heat'>,
|
||||||
]),
|
]),
|
||||||
'max_temp': 35,
|
'max_temp': 35,
|
||||||
@ -206,7 +206,7 @@
|
|||||||
<HVACMode.COOL: 'cool'>,
|
<HVACMode.COOL: 'cool'>,
|
||||||
<HVACMode.DRY: 'dry'>,
|
<HVACMode.DRY: 'dry'>,
|
||||||
<HVACMode.FAN_ONLY: 'fan_only'>,
|
<HVACMode.FAN_ONLY: 'fan_only'>,
|
||||||
<HVACMode.HEAT_COOL: 'heat_cool'>,
|
<HVACMode.AUTO: 'auto'>,
|
||||||
<HVACMode.HEAT: 'heat'>,
|
<HVACMode.HEAT: 'heat'>,
|
||||||
]),
|
]),
|
||||||
'max_temp': 35,
|
'max_temp': 35,
|
||||||
@ -246,7 +246,7 @@
|
|||||||
<HVACMode.COOL: 'cool'>,
|
<HVACMode.COOL: 'cool'>,
|
||||||
<HVACMode.DRY: 'dry'>,
|
<HVACMode.DRY: 'dry'>,
|
||||||
<HVACMode.FAN_ONLY: 'fan_only'>,
|
<HVACMode.FAN_ONLY: 'fan_only'>,
|
||||||
<HVACMode.HEAT_COOL: 'heat_cool'>,
|
<HVACMode.AUTO: 'auto'>,
|
||||||
]),
|
]),
|
||||||
'max_temp': 35,
|
'max_temp': 35,
|
||||||
'min_temp': 7,
|
'min_temp': 7,
|
||||||
@ -308,7 +308,7 @@
|
|||||||
<HVACMode.COOL: 'cool'>,
|
<HVACMode.COOL: 'cool'>,
|
||||||
<HVACMode.DRY: 'dry'>,
|
<HVACMode.DRY: 'dry'>,
|
||||||
<HVACMode.FAN_ONLY: 'fan_only'>,
|
<HVACMode.FAN_ONLY: 'fan_only'>,
|
||||||
<HVACMode.HEAT_COOL: 'heat_cool'>,
|
<HVACMode.AUTO: 'auto'>,
|
||||||
]),
|
]),
|
||||||
'max_temp': 35,
|
'max_temp': 35,
|
||||||
'min_temp': 7,
|
'min_temp': 7,
|
||||||
@ -349,7 +349,7 @@
|
|||||||
]),
|
]),
|
||||||
'hvac_modes': list([
|
'hvac_modes': list([
|
||||||
<HVACMode.OFF: 'off'>,
|
<HVACMode.OFF: 'off'>,
|
||||||
<HVACMode.HEAT_COOL: 'heat_cool'>,
|
<HVACMode.AUTO: 'auto'>,
|
||||||
<HVACMode.COOL: 'cool'>,
|
<HVACMode.COOL: 'cool'>,
|
||||||
<HVACMode.DRY: 'dry'>,
|
<HVACMode.DRY: 'dry'>,
|
||||||
<HVACMode.FAN_ONLY: 'fan_only'>,
|
<HVACMode.FAN_ONLY: 'fan_only'>,
|
||||||
@ -414,7 +414,7 @@
|
|||||||
'friendly_name': 'Aire Dormitorio Principal',
|
'friendly_name': 'Aire Dormitorio Principal',
|
||||||
'hvac_modes': list([
|
'hvac_modes': list([
|
||||||
<HVACMode.OFF: 'off'>,
|
<HVACMode.OFF: 'off'>,
|
||||||
<HVACMode.HEAT_COOL: 'heat_cool'>,
|
<HVACMode.AUTO: 'auto'>,
|
||||||
<HVACMode.COOL: 'cool'>,
|
<HVACMode.COOL: 'cool'>,
|
||||||
<HVACMode.DRY: 'dry'>,
|
<HVACMode.DRY: 'dry'>,
|
||||||
<HVACMode.FAN_ONLY: 'fan_only'>,
|
<HVACMode.FAN_ONLY: 'fan_only'>,
|
||||||
@ -462,7 +462,7 @@
|
|||||||
<HVACMode.COOL: 'cool'>,
|
<HVACMode.COOL: 'cool'>,
|
||||||
<HVACMode.DRY: 'dry'>,
|
<HVACMode.DRY: 'dry'>,
|
||||||
<HVACMode.FAN_ONLY: 'fan_only'>,
|
<HVACMode.FAN_ONLY: 'fan_only'>,
|
||||||
<HVACMode.HEAT_COOL: 'heat_cool'>,
|
<HVACMode.AUTO: 'auto'>,
|
||||||
]),
|
]),
|
||||||
'max_temp': 35,
|
'max_temp': 35,
|
||||||
'min_temp': 7,
|
'min_temp': 7,
|
||||||
@ -513,7 +513,7 @@
|
|||||||
<HVACMode.COOL: 'cool'>,
|
<HVACMode.COOL: 'cool'>,
|
||||||
<HVACMode.DRY: 'dry'>,
|
<HVACMode.DRY: 'dry'>,
|
||||||
<HVACMode.FAN_ONLY: 'fan_only'>,
|
<HVACMode.FAN_ONLY: 'fan_only'>,
|
||||||
<HVACMode.HEAT_COOL: 'heat_cool'>,
|
<HVACMode.AUTO: 'auto'>,
|
||||||
]),
|
]),
|
||||||
'max_temp': 35,
|
'max_temp': 35,
|
||||||
'min_temp': 7,
|
'min_temp': 7,
|
||||||
@ -541,7 +541,7 @@
|
|||||||
'hvac_modes': list([
|
'hvac_modes': list([
|
||||||
<HVACMode.OFF: 'off'>,
|
<HVACMode.OFF: 'off'>,
|
||||||
<HVACMode.COOL: 'cool'>,
|
<HVACMode.COOL: 'cool'>,
|
||||||
<HVACMode.HEAT_COOL: 'heat_cool'>,
|
<HVACMode.AUTO: 'auto'>,
|
||||||
]),
|
]),
|
||||||
'max_temp': 35.0,
|
'max_temp': 35.0,
|
||||||
'min_temp': 7.0,
|
'min_temp': 7.0,
|
||||||
@ -589,7 +589,7 @@
|
|||||||
'hvac_modes': list([
|
'hvac_modes': list([
|
||||||
<HVACMode.OFF: 'off'>,
|
<HVACMode.OFF: 'off'>,
|
||||||
<HVACMode.COOL: 'cool'>,
|
<HVACMode.COOL: 'cool'>,
|
||||||
<HVACMode.HEAT_COOL: 'heat_cool'>,
|
<HVACMode.AUTO: 'auto'>,
|
||||||
]),
|
]),
|
||||||
'max_temp': 35.0,
|
'max_temp': 35.0,
|
||||||
'min_temp': 7.0,
|
'min_temp': 7.0,
|
||||||
|
@ -119,7 +119,7 @@ async def test_ac_set_hvac_mode_off(
|
|||||||
@pytest.mark.parametrize(
|
@pytest.mark.parametrize(
|
||||||
("hvac_mode", "argument"),
|
("hvac_mode", "argument"),
|
||||||
[
|
[
|
||||||
(HVACMode.HEAT_COOL, "auto"),
|
(HVACMode.AUTO, "auto"),
|
||||||
(HVACMode.COOL, "cool"),
|
(HVACMode.COOL, "cool"),
|
||||||
(HVACMode.DRY, "dry"),
|
(HVACMode.DRY, "dry"),
|
||||||
(HVACMode.HEAT, "heat"),
|
(HVACMode.HEAT, "heat"),
|
||||||
@ -174,7 +174,7 @@ async def test_ac_set_hvac_mode_turns_on(
|
|||||||
SERVICE_SET_HVAC_MODE,
|
SERVICE_SET_HVAC_MODE,
|
||||||
{
|
{
|
||||||
ATTR_ENTITY_ID: "climate.ac_office_granit",
|
ATTR_ENTITY_ID: "climate.ac_office_granit",
|
||||||
ATTR_HVAC_MODE: HVACMode.HEAT_COOL,
|
ATTR_HVAC_MODE: HVACMode.AUTO,
|
||||||
},
|
},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
@ -268,7 +268,7 @@ async def test_ac_set_temperature_and_hvac_mode_while_off(
|
|||||||
{
|
{
|
||||||
ATTR_ENTITY_ID: "climate.ac_office_granit",
|
ATTR_ENTITY_ID: "climate.ac_office_granit",
|
||||||
ATTR_TEMPERATURE: 23,
|
ATTR_TEMPERATURE: 23,
|
||||||
ATTR_HVAC_MODE: HVACMode.HEAT_COOL,
|
ATTR_HVAC_MODE: HVACMode.AUTO,
|
||||||
},
|
},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
@ -318,7 +318,7 @@ async def test_ac_set_temperature_and_hvac_mode(
|
|||||||
{
|
{
|
||||||
ATTR_ENTITY_ID: "climate.ac_office_granit",
|
ATTR_ENTITY_ID: "climate.ac_office_granit",
|
||||||
ATTR_TEMPERATURE: 23,
|
ATTR_TEMPERATURE: 23,
|
||||||
ATTR_HVAC_MODE: HVACMode.HEAT_COOL,
|
ATTR_HVAC_MODE: HVACMode.AUTO,
|
||||||
},
|
},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
@ -625,7 +625,7 @@ async def test_thermostat_set_hvac_mode(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
CLIMATE_DOMAIN,
|
CLIMATE_DOMAIN,
|
||||||
SERVICE_SET_HVAC_MODE,
|
SERVICE_SET_HVAC_MODE,
|
||||||
{ATTR_ENTITY_ID: "climate.asd", ATTR_HVAC_MODE: HVACMode.HEAT_COOL},
|
{ATTR_ENTITY_ID: "climate.asd", ATTR_HVAC_MODE: HVACMode.AUTO},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
devices.execute_device_command.assert_called_once_with(
|
devices.execute_device_command.assert_called_once_with(
|
||||||
|
Loading…
x
Reference in New Issue
Block a user