Skip to content

Commit 8b23f93

Browse files
committed
rename symbols from ATTR_ to EVO_
1 parent 287b38b commit 8b23f93

4 files changed

Lines changed: 48 additions & 54 deletions

File tree

homeassistant/components/evohome/climate.py

Lines changed: 7 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -29,19 +29,14 @@
2929
ClimateEntityFeature,
3030
HVACMode,
3131
)
32-
from homeassistant.const import (
33-
ATTR_MODE,
34-
ATTR_TEMPERATURE,
35-
PRECISION_TENTHS,
36-
UnitOfTemperature,
37-
)
32+
from homeassistant.const import ATTR_TEMPERATURE, PRECISION_TENTHS, UnitOfTemperature
3833
from homeassistant.core import HomeAssistant, callback
3934
from homeassistant.exceptions import HomeAssistantError, ServiceValidationError
4035
from homeassistant.helpers.entity_platform import AddEntitiesCallback
4136
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
4237
from homeassistant.util import dt as dt_util
4338

44-
from .const import ATTR_DURATION, ATTR_PERIOD, DOMAIN, EVOHOME_DATA, EvoService
39+
from .const import DOMAIN, EVO_DURATION, EVO_MODE, EVO_PERIOD, EVOHOME_DATA, EvoService
4540
from .coordinator import EvoDataUpdateCoordinator
4641
from .entity import EvoChild, EvoEntity
4742

@@ -369,14 +364,14 @@ async def async_tcs_svc_request(self, service: str, data: dict[str, Any]) -> Non
369364
await self.coordinator.call_client_api(self._evo_device.reset())
370365
return
371366

372-
mode = data[ATTR_MODE] # otherwise it is EvoService.SET_SYSTEM_MODE
367+
mode = data[EVO_MODE] # otherwise it is EvoService.SET_SYSTEM_MODE
373368

374-
if ATTR_PERIOD in data:
369+
if EVO_PERIOD in data:
375370
until = dt_util.start_of_local_day()
376-
until += data[ATTR_PERIOD]
371+
until += data[EVO_PERIOD]
377372

378-
elif ATTR_DURATION in data:
379-
until = dt_util.now() + data[ATTR_DURATION]
373+
elif EVO_DURATION in data:
374+
until = dt_util.now() + data[EVO_DURATION]
380375

381376
else:
382377
until = None

homeassistant/components/evohome/const.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,11 @@
2424
SCAN_INTERVAL_DEFAULT: Final = timedelta(seconds=300)
2525
SCAN_INTERVAL_MINIMUM: Final = timedelta(seconds=60)
2626

27-
ATTR_PERIOD: Final = "period" # number of days
28-
ATTR_DURATION: Final = "duration" # number of minutes, <24h
29-
30-
ATTR_SETPOINT: Final = "setpoint"
27+
# These are kwargs and named args for API calls
28+
EVO_DURATION: Final = "duration" # number of minutes, <24h
29+
EVO_MODE: Final = "mode" # EvoSystemMode or EvoZoneMode
30+
EVO_PERIOD: Final = "period" # number of days
31+
EVO_SETPOINT: Final = "setpoint"
3132

3233

3334
@unique

homeassistant/components/evohome/services.py

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -14,36 +14,35 @@
1414
import voluptuous as vol
1515

1616
from homeassistant.components.climate import DOMAIN as CLIMATE_DOMAIN
17-
from homeassistant.const import ATTR_MODE
1817
from homeassistant.core import HomeAssistant, ServiceCall, callback
1918
from homeassistant.exceptions import ServiceValidationError
2019
from homeassistant.helpers import config_validation as cv, service
2120
from homeassistant.helpers.dispatcher import async_dispatcher_send
2221
from homeassistant.helpers.service import verify_domain_control
2322

24-
from .const import ATTR_DURATION, ATTR_PERIOD, ATTR_SETPOINT, DOMAIN, EvoService
23+
from .const import DOMAIN, EVO_DURATION, EVO_MODE, EVO_PERIOD, EVO_SETPOINT, EvoService
2524
from .coordinator import EvoDataUpdateCoordinator
2625

2726
# System service schemas (registered as domain services)
2827
SET_SYSTEM_MODE_SCHEMA: Final[dict[str | vol.Marker, Any]] = {
2928
# unsupported modes are rejected at runtime with ServiceValidationError
30-
vol.Required(ATTR_MODE): cv.string, # avoid vol.In(SystemMode)
31-
vol.Exclusive(ATTR_DURATION, "temporary"): vol.All(
29+
vol.Required(EVO_MODE): cv.string, # avoid vol.In(SystemMode)
30+
vol.Exclusive(EVO_DURATION, "temporary"): vol.All(
3231
cv.time_period,
3332
vol.Range(min=timedelta(hours=0), max=timedelta(hours=24)),
3433
),
35-
vol.Exclusive(ATTR_PERIOD, "temporary"): vol.All(
34+
vol.Exclusive(EVO_PERIOD, "temporary"): vol.All(
3635
cv.time_period,
3736
vol.Range(min=timedelta(days=1), max=timedelta(days=99)),
3837
),
3938
}
4039

4140
# Zone service schemas (registered as entity services)
4241
SET_ZONE_OVERRIDE_SCHEMA: Final[dict[str | vol.Marker, Any]] = {
43-
vol.Required(ATTR_SETPOINT): vol.All(
42+
vol.Required(EVO_SETPOINT): vol.All(
4443
vol.Coerce(float), vol.Range(min=4.0, max=35.0)
4544
),
46-
vol.Optional(ATTR_DURATION): vol.All(
45+
vol.Optional(EVO_DURATION): vol.All(
4746
cv.time_period,
4847
vol.Range(min=timedelta(days=0), max=timedelta(days=1)),
4948
),
@@ -74,7 +73,7 @@ def _register_zone_entity_services(hass: HomeAssistant) -> None:
7473
def _validate_set_system_mode_params(tcs: ControlSystem, data: dict[str, Any]) -> None:
7574
"""Validate that a set_system_mode service call is properly formed."""
7675

77-
mode = data[ATTR_MODE]
76+
mode = data[EVO_MODE]
7877
tcs_modes = {m[SZ_SYSTEM_MODE]: m for m in tcs.allowed_system_modes}
7978

8079
# Validation occurs here, instead of in the library, because it uses a slightly
@@ -85,34 +84,34 @@ def _validate_set_system_mode_params(tcs: ControlSystem, data: dict[str, Any]) -
8584
raise ServiceValidationError(
8685
translation_domain=DOMAIN,
8786
translation_key="mode_not_supported",
88-
translation_placeholders={ATTR_MODE: mode},
87+
translation_placeholders={EVO_MODE: mode},
8988
)
9089

9190
# voluptuous schema ensures that duration and period are not both present
9291

9392
if not mode_info[SZ_CAN_BE_TEMPORARY]:
94-
if ATTR_DURATION in data or ATTR_PERIOD in data:
93+
if EVO_DURATION in data or EVO_PERIOD in data:
9594
raise ServiceValidationError(
9695
translation_domain=DOMAIN,
9796
translation_key="mode_cant_be_temporary",
98-
translation_placeholders={ATTR_MODE: mode},
97+
translation_placeholders={EVO_MODE: mode},
9998
)
10099
return
101100

102101
timing_mode = mode_info.get(SZ_TIMING_MODE) # will not be None, as can_be_temporary
103102

104-
if timing_mode == SZ_DURATION and ATTR_PERIOD in data:
103+
if timing_mode == SZ_DURATION and EVO_PERIOD in data:
105104
raise ServiceValidationError(
106105
translation_domain=DOMAIN,
107106
translation_key="mode_cant_have_period",
108-
translation_placeholders={ATTR_MODE: mode},
107+
translation_placeholders={EVO_MODE: mode},
109108
)
110109

111-
if timing_mode == SZ_PERIOD and ATTR_DURATION in data:
110+
if timing_mode == SZ_PERIOD and EVO_DURATION in data:
112111
raise ServiceValidationError(
113112
translation_domain=DOMAIN,
114113
translation_key="mode_cant_have_duration",
115-
translation_placeholders={ATTR_MODE: mode},
114+
translation_placeholders={EVO_MODE: mode},
116115
)
117116

118117

tests/components/evohome/test_services.py

Lines changed: 22 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,14 @@
1111
import pytest
1212

1313
from homeassistant.components.evohome.const import (
14-
ATTR_DURATION,
15-
ATTR_PERIOD,
16-
ATTR_SETPOINT,
1714
DOMAIN,
15+
EVO_DURATION,
16+
EVO_MODE,
17+
EVO_PERIOD,
18+
EVO_SETPOINT,
1819
EvoService,
1920
)
20-
from homeassistant.const import ATTR_ENTITY_ID, ATTR_MODE
21+
from homeassistant.const import ATTR_ENTITY_ID
2122
from homeassistant.core import HomeAssistant
2223
from homeassistant.exceptions import ServiceValidationError
2324

@@ -76,7 +77,7 @@ async def test_set_system_mode(
7677
DOMAIN,
7778
EvoService.SET_SYSTEM_MODE,
7879
{
79-
ATTR_MODE: "Auto",
80+
EVO_MODE: "Auto",
8081
},
8182
blocking=True,
8283
)
@@ -91,8 +92,8 @@ async def test_set_system_mode(
9192
DOMAIN,
9293
EvoService.SET_SYSTEM_MODE,
9394
{
94-
ATTR_MODE: "AutoWithEco",
95-
ATTR_DURATION: {"hours": 12},
95+
EVO_MODE: "AutoWithEco",
96+
EVO_DURATION: {"hours": 12},
9697
},
9798
blocking=True,
9899
)
@@ -107,8 +108,8 @@ async def test_set_system_mode(
107108
DOMAIN,
108109
EvoService.SET_SYSTEM_MODE,
109110
{
110-
ATTR_MODE: "Away",
111-
ATTR_PERIOD: {"days": 7},
111+
EVO_MODE: "Away",
112+
EVO_PERIOD: {"days": 7},
112113
},
113114
blocking=True,
114115
)
@@ -175,7 +176,7 @@ async def test_set_zone_override(
175176
DOMAIN,
176177
EvoService.SET_ZONE_OVERRIDE,
177178
{
178-
ATTR_SETPOINT: 19.5,
179+
EVO_SETPOINT: 19.5,
179180
},
180181
target={ATTR_ENTITY_ID: zone_id},
181182
blocking=True,
@@ -189,8 +190,8 @@ async def test_set_zone_override(
189190
DOMAIN,
190191
EvoService.SET_ZONE_OVERRIDE,
191192
{
192-
ATTR_SETPOINT: 19.5,
193-
ATTR_DURATION: {"minutes": 135},
193+
EVO_SETPOINT: 19.5,
194+
EVO_DURATION: {"minutes": 135},
194195
},
195196
target={ATTR_ENTITY_ID: zone_id},
196197
blocking=True,
@@ -218,7 +219,7 @@ async def test_set_zone_override_legacy(
218219
EvoService.SET_ZONE_OVERRIDE,
219220
{
220221
ATTR_ENTITY_ID: zone_id,
221-
ATTR_SETPOINT: 19.5,
222+
EVO_SETPOINT: 19.5,
222223
},
223224
blocking=True,
224225
)
@@ -232,8 +233,8 @@ async def test_set_zone_override_legacy(
232233
EvoService.SET_ZONE_OVERRIDE,
233234
{
234235
ATTR_ENTITY_ID: zone_id,
235-
ATTR_SETPOINT: 19.5,
236-
ATTR_DURATION: {"minutes": 135},
236+
EVO_SETPOINT: 19.5,
237+
EVO_DURATION: {"minutes": 135},
237238
},
238239
blocking=True,
239240
)
@@ -248,7 +249,7 @@ async def test_set_zone_override_legacy(
248249
("service", "service_data"),
249250
[
250251
(EvoService.CLEAR_ZONE_OVERRIDE, {}),
251-
(EvoService.SET_ZONE_OVERRIDE, {ATTR_SETPOINT: 19.5}),
252+
(EvoService.SET_ZONE_OVERRIDE, {EVO_SETPOINT: 19.5}),
252253
],
253254
)
254255
async def test_zone_services_with_ctl_id(
@@ -274,19 +275,19 @@ async def test_zone_services_with_ctl_id(
274275

275276
_SET_SYSTEM_MODE_VALIDATOR_PARAMS = [
276277
(
277-
{ATTR_MODE: "NotARealMode"},
278+
{EVO_MODE: "NotARealMode"},
278279
"mode_not_supported",
279280
),
280281
(
281-
{ATTR_MODE: "Auto", ATTR_DURATION: {"hours": 1}},
282+
{EVO_MODE: "Auto", EVO_DURATION: {"hours": 1}},
282283
"mode_cant_be_temporary",
283284
),
284285
(
285-
{ATTR_MODE: "AutoWithEco", ATTR_PERIOD: {"days": 1}},
286+
{EVO_MODE: "AutoWithEco", EVO_PERIOD: {"days": 1}},
286287
"mode_cant_have_period",
287288
),
288289
(
289-
{ATTR_MODE: "DayOff", ATTR_DURATION: {"hours": 1}},
290+
{EVO_MODE: "DayOff", EVO_DURATION: {"hours": 1}},
290291
"mode_cant_have_duration",
291292
),
292293
]
@@ -316,6 +317,4 @@ async def test_set_system_mode_validator(
316317
)
317318

318319
assert exc_info.value.translation_key == expected_translation_key
319-
assert exc_info.value.translation_placeholders == {
320-
ATTR_MODE: service_data[ATTR_MODE]
321-
}
320+
assert exc_info.value.translation_placeholders == {EVO_MODE: service_data[EVO_MODE]}

0 commit comments

Comments
 (0)