Compare commits

...

1 Commits

Author SHA1 Message Date
epenet
cf3f2ae8e3 Drop single-use service name constants in bond 2026-02-27 09:18:07 +00:00
4 changed files with 32 additions and 56 deletions

View File

@@ -14,19 +14,6 @@ from .const import DOMAIN
ATTR_POWER_STATE = "power_state"
# Fan
SERVICE_SET_FAN_SPEED_TRACKED_STATE = "set_fan_speed_tracked_state"
# Switch
SERVICE_SET_POWER_TRACKED_STATE = "set_switch_power_tracked_state"
# Light
SERVICE_SET_LIGHT_POWER_TRACKED_STATE = "set_light_power_tracked_state"
SERVICE_SET_LIGHT_BRIGHTNESS_TRACKED_STATE = "set_light_brightness_tracked_state"
SERVICE_START_INCREASING_BRIGHTNESS = "start_increasing_brightness"
SERVICE_START_DECREASING_BRIGHTNESS = "start_decreasing_brightness"
SERVICE_STOP = "stop"
@callback
def async_setup_services(hass: HomeAssistant) -> None:
@@ -36,7 +23,7 @@ def async_setup_services(hass: HomeAssistant) -> None:
service.async_register_platform_entity_service(
hass,
DOMAIN,
SERVICE_SET_FAN_SPEED_TRACKED_STATE,
"set_fan_speed_tracked_state",
entity_domain=FAN_DOMAIN,
schema={vol.Required("speed"): vol.All(vol.Number(scale=0), vol.Range(0, 100))},
func="async_set_speed_belief",
@@ -46,7 +33,7 @@ def async_setup_services(hass: HomeAssistant) -> None:
service.async_register_platform_entity_service(
hass,
DOMAIN,
SERVICE_START_INCREASING_BRIGHTNESS,
"start_increasing_brightness",
entity_domain=LIGHT_DOMAIN,
schema=None,
func="async_start_increasing_brightness",
@@ -54,7 +41,7 @@ def async_setup_services(hass: HomeAssistant) -> None:
service.async_register_platform_entity_service(
hass,
DOMAIN,
SERVICE_START_DECREASING_BRIGHTNESS,
"start_decreasing_brightness",
entity_domain=LIGHT_DOMAIN,
schema=None,
func="async_start_decreasing_brightness",
@@ -62,7 +49,7 @@ def async_setup_services(hass: HomeAssistant) -> None:
service.async_register_platform_entity_service(
hass,
DOMAIN,
SERVICE_STOP,
"stop",
entity_domain=LIGHT_DOMAIN,
schema=None,
func="async_stop",
@@ -71,7 +58,7 @@ def async_setup_services(hass: HomeAssistant) -> None:
service.async_register_platform_entity_service(
hass,
DOMAIN,
SERVICE_SET_LIGHT_BRIGHTNESS_TRACKED_STATE,
"set_light_brightness_tracked_state",
entity_domain=LIGHT_DOMAIN,
schema={
vol.Required(ATTR_BRIGHTNESS): vol.All(
@@ -84,7 +71,7 @@ def async_setup_services(hass: HomeAssistant) -> None:
service.async_register_platform_entity_service(
hass,
DOMAIN,
SERVICE_SET_LIGHT_POWER_TRACKED_STATE,
"set_light_power_tracked_state",
entity_domain=LIGHT_DOMAIN,
schema={vol.Required(ATTR_POWER_STATE): vol.All(cv.boolean)},
func="async_set_power_belief",
@@ -94,7 +81,7 @@ def async_setup_services(hass: HomeAssistant) -> None:
service.async_register_platform_entity_service(
hass,
DOMAIN,
SERVICE_SET_POWER_TRACKED_STATE,
"set_switch_power_tracked_state",
entity_domain=SWITCH_DOMAIN,
schema={vol.Required(ATTR_POWER_STATE): cv.boolean},
func="async_set_power_belief",

View File

@@ -12,7 +12,6 @@ from homeassistant import core
from homeassistant.components import fan
from homeassistant.components.bond.const import DOMAIN
from homeassistant.components.bond.fan import PRESET_MODE_BREEZE
from homeassistant.components.bond.services import SERVICE_SET_FAN_SPEED_TRACKED_STATE
from homeassistant.components.fan import (
ATTR_DIRECTION,
ATTR_PERCENTAGE,
@@ -366,7 +365,7 @@ async def test_set_speed_belief_speed_zero(hass: HomeAssistant) -> None:
with patch_bond_action() as mock_action, patch_bond_device_state():
await hass.services.async_call(
DOMAIN,
SERVICE_SET_FAN_SPEED_TRACKED_STATE,
"set_fan_speed_tracked_state",
{ATTR_ENTITY_ID: "fan.name_1", "speed": 0},
blocking=True,
)
@@ -390,7 +389,7 @@ async def test_set_speed_belief_speed_api_error(hass: HomeAssistant) -> None:
):
await hass.services.async_call(
DOMAIN,
SERVICE_SET_FAN_SPEED_TRACKED_STATE,
"set_fan_speed_tracked_state",
{ATTR_ENTITY_ID: "fan.name_1", "speed": 100},
blocking=True,
)
@@ -405,7 +404,7 @@ async def test_set_speed_belief_speed_100(hass: HomeAssistant) -> None:
with patch_bond_action() as mock_action, patch_bond_device_state():
await hass.services.async_call(
DOMAIN,
SERVICE_SET_FAN_SPEED_TRACKED_STATE,
"set_fan_speed_tracked_state",
{ATTR_ENTITY_ID: "fan.name_1", "speed": 100},
blocking=True,
)

View File

@@ -6,14 +6,7 @@ from bond_async import Action, DeviceType
import pytest
from homeassistant.components.bond.const import DOMAIN
from homeassistant.components.bond.services import (
ATTR_POWER_STATE,
SERVICE_SET_LIGHT_BRIGHTNESS_TRACKED_STATE,
SERVICE_SET_LIGHT_POWER_TRACKED_STATE,
SERVICE_START_DECREASING_BRIGHTNESS,
SERVICE_START_INCREASING_BRIGHTNESS,
SERVICE_STOP,
)
from homeassistant.components.bond.services import ATTR_POWER_STATE
from homeassistant.components.light import (
ATTR_BRIGHTNESS,
ATTR_COLOR_MODE,
@@ -308,7 +301,7 @@ async def test_light_set_brightness_belief_full(hass: HomeAssistant) -> None:
with patch_bond_action() as mock_bond_action, patch_bond_device_state():
await hass.services.async_call(
DOMAIN,
SERVICE_SET_LIGHT_BRIGHTNESS_TRACKED_STATE,
"set_light_brightness_tracked_state",
{ATTR_ENTITY_ID: "light.name_1", ATTR_BRIGHTNESS: 255},
blocking=True,
)
@@ -335,7 +328,7 @@ async def test_light_set_brightness_belief_api_error(hass: HomeAssistant) -> Non
):
await hass.services.async_call(
DOMAIN,
SERVICE_SET_LIGHT_BRIGHTNESS_TRACKED_STATE,
"set_light_brightness_tracked_state",
{ATTR_ENTITY_ID: "light.name_1", ATTR_BRIGHTNESS: 255},
blocking=True,
)
@@ -353,7 +346,7 @@ async def test_fp_light_set_brightness_belief_full(hass: HomeAssistant) -> None:
with patch_bond_action() as mock_bond_action, patch_bond_device_state():
await hass.services.async_call(
DOMAIN,
SERVICE_SET_LIGHT_BRIGHTNESS_TRACKED_STATE,
"set_light_brightness_tracked_state",
{ATTR_ENTITY_ID: "light.name_1", ATTR_BRIGHTNESS: 255},
blocking=True,
)
@@ -380,7 +373,7 @@ async def test_fp_light_set_brightness_belief_api_error(hass: HomeAssistant) ->
):
await hass.services.async_call(
DOMAIN,
SERVICE_SET_LIGHT_BRIGHTNESS_TRACKED_STATE,
"set_light_brightness_tracked_state",
{ATTR_ENTITY_ID: "light.name_1", ATTR_BRIGHTNESS: 255},
blocking=True,
)
@@ -400,7 +393,7 @@ async def test_light_set_brightness_belief_brightness_not_supported(
with pytest.raises(HomeAssistantError), patch_bond_device_state():
await hass.services.async_call(
DOMAIN,
SERVICE_SET_LIGHT_BRIGHTNESS_TRACKED_STATE,
"set_light_brightness_tracked_state",
{ATTR_ENTITY_ID: "light.name_1", ATTR_BRIGHTNESS: 255},
blocking=True,
)
@@ -418,7 +411,7 @@ async def test_light_set_brightness_belief_zero(hass: HomeAssistant) -> None:
with patch_bond_action() as mock_bond_action, patch_bond_device_state():
await hass.services.async_call(
DOMAIN,
SERVICE_SET_LIGHT_BRIGHTNESS_TRACKED_STATE,
"set_light_brightness_tracked_state",
{ATTR_ENTITY_ID: "light.name_1", ATTR_BRIGHTNESS: 0},
blocking=True,
)
@@ -441,7 +434,7 @@ async def test_fp_light_set_brightness_belief_zero(hass: HomeAssistant) -> None:
with patch_bond_action() as mock_bond_action, patch_bond_device_state():
await hass.services.async_call(
DOMAIN,
SERVICE_SET_LIGHT_BRIGHTNESS_TRACKED_STATE,
"set_light_brightness_tracked_state",
{ATTR_ENTITY_ID: "light.name_1", ATTR_BRIGHTNESS: 0},
blocking=True,
)
@@ -464,7 +457,7 @@ async def test_light_set_power_belief(hass: HomeAssistant) -> None:
with patch_bond_action() as mock_bond_action, patch_bond_device_state():
await hass.services.async_call(
DOMAIN,
SERVICE_SET_LIGHT_POWER_TRACKED_STATE,
"set_light_power_tracked_state",
{ATTR_ENTITY_ID: "light.name_1", ATTR_POWER_STATE: False},
blocking=True,
)
@@ -491,7 +484,7 @@ async def test_light_set_power_belief_api_error(hass: HomeAssistant) -> None:
):
await hass.services.async_call(
DOMAIN,
SERVICE_SET_LIGHT_POWER_TRACKED_STATE,
"set_light_power_tracked_state",
{ATTR_ENTITY_ID: "light.name_1", ATTR_POWER_STATE: False},
blocking=True,
)
@@ -509,7 +502,7 @@ async def test_fp_light_set_power_belief(hass: HomeAssistant) -> None:
with patch_bond_action() as mock_bond_action, patch_bond_device_state():
await hass.services.async_call(
DOMAIN,
SERVICE_SET_LIGHT_POWER_TRACKED_STATE,
"set_light_power_tracked_state",
{ATTR_ENTITY_ID: "light.name_1", ATTR_POWER_STATE: False},
blocking=True,
)
@@ -536,7 +529,7 @@ async def test_fp_light_set_power_belief_api_error(hass: HomeAssistant) -> None:
):
await hass.services.async_call(
DOMAIN,
SERVICE_SET_LIGHT_POWER_TRACKED_STATE,
"set_light_power_tracked_state",
{ATTR_ENTITY_ID: "light.name_1", ATTR_POWER_STATE: False},
blocking=True,
)
@@ -556,7 +549,7 @@ async def test_fp_light_set_brightness_belief_brightness_not_supported(
with pytest.raises(HomeAssistantError), patch_bond_device_state():
await hass.services.async_call(
DOMAIN,
SERVICE_SET_LIGHT_BRIGHTNESS_TRACKED_STATE,
"set_light_brightness_tracked_state",
{ATTR_ENTITY_ID: "light.name_1", ATTR_BRIGHTNESS: 255},
blocking=True,
)
@@ -574,7 +567,7 @@ async def test_light_start_increasing_brightness(hass: HomeAssistant) -> None:
with patch_bond_action() as mock_bond_action, patch_bond_device_state():
await hass.services.async_call(
DOMAIN,
SERVICE_START_INCREASING_BRIGHTNESS,
"start_increasing_brightness",
{ATTR_ENTITY_ID: "light.name_1"},
blocking=True,
)
@@ -596,7 +589,7 @@ async def test_light_start_increasing_brightness_missing_service(
with pytest.raises(HomeAssistantError), patch_bond_device_state():
await hass.services.async_call(
DOMAIN,
SERVICE_START_INCREASING_BRIGHTNESS,
"start_increasing_brightness",
{ATTR_ENTITY_ID: "light.name_1"},
blocking=True,
)
@@ -614,7 +607,7 @@ async def test_light_start_decreasing_brightness(hass: HomeAssistant) -> None:
with patch_bond_action() as mock_bond_action, patch_bond_device_state():
await hass.services.async_call(
DOMAIN,
SERVICE_START_DECREASING_BRIGHTNESS,
"start_decreasing_brightness",
{ATTR_ENTITY_ID: "light.name_1"},
blocking=True,
)
@@ -639,7 +632,7 @@ async def test_light_start_decreasing_brightness_missing_service(
with pytest.raises(HomeAssistantError), patch_bond_device_state():
await hass.services.async_call(
DOMAIN,
SERVICE_START_DECREASING_BRIGHTNESS,
"start_decreasing_brightness",
{ATTR_ENTITY_ID: "light.name_1"},
blocking=True,
)
@@ -657,7 +650,7 @@ async def test_light_stop(hass: HomeAssistant) -> None:
with patch_bond_action() as mock_bond_action, patch_bond_device_state():
await hass.services.async_call(
DOMAIN,
SERVICE_STOP,
"stop",
{ATTR_ENTITY_ID: "light.name_1"},
blocking=True,
)
@@ -680,7 +673,7 @@ async def test_light_stop_missing_service(
with pytest.raises(HomeAssistantError), patch_bond_device_state():
await hass.services.async_call(
DOMAIN,
SERVICE_STOP,
"stop",
{ATTR_ENTITY_ID: "light.name_1"},
blocking=True,
)

View File

@@ -6,10 +6,7 @@ from bond_async import Action, DeviceType
import pytest
from homeassistant.components.bond.const import DOMAIN
from homeassistant.components.bond.services import (
ATTR_POWER_STATE,
SERVICE_SET_POWER_TRACKED_STATE,
)
from homeassistant.components.bond.services import ATTR_POWER_STATE
from homeassistant.components.switch import DOMAIN as SWITCH_DOMAIN
from homeassistant.const import ATTR_ENTITY_ID, SERVICE_TURN_OFF, SERVICE_TURN_ON
from homeassistant.core import HomeAssistant
@@ -95,7 +92,7 @@ async def test_switch_set_power_belief(hass: HomeAssistant) -> None:
with patch_bond_action() as mock_bond_action, patch_bond_device_state():
await hass.services.async_call(
DOMAIN,
SERVICE_SET_POWER_TRACKED_STATE,
"set_switch_power_tracked_state",
{ATTR_ENTITY_ID: "switch.name_1", ATTR_POWER_STATE: False},
blocking=True,
)
@@ -119,7 +116,7 @@ async def test_switch_set_power_belief_api_error(hass: HomeAssistant) -> None:
):
await hass.services.async_call(
DOMAIN,
SERVICE_SET_POWER_TRACKED_STATE,
"set_switch_power_tracked_state",
{ATTR_ENTITY_ID: "switch.name_1", ATTR_POWER_STATE: False},
blocking=True,
)