mirror of
https://github.com/home-assistant/core.git
synced 2025-07-17 18:27:09 +00:00
Use the ESPHome object_id to suggest the entity id (#95852)
This commit is contained in:
parent
87f284c7e9
commit
7dc03ef301
@ -23,6 +23,7 @@ from homeassistant.const import (
|
|||||||
EntityCategory,
|
EntityCategory,
|
||||||
)
|
)
|
||||||
from homeassistant.core import HomeAssistant, callback
|
from homeassistant.core import HomeAssistant, callback
|
||||||
|
from homeassistant.helpers import entity_platform
|
||||||
import homeassistant.helpers.config_validation as cv
|
import homeassistant.helpers.config_validation as cv
|
||||||
import homeassistant.helpers.device_registry as dr
|
import homeassistant.helpers.device_registry as dr
|
||||||
from homeassistant.helpers.dispatcher import (
|
from homeassistant.helpers.dispatcher import (
|
||||||
@ -60,6 +61,7 @@ async def platform_async_setup_entry(
|
|||||||
entry_data: RuntimeEntryData = DomainData.get(hass).get_entry_data(entry)
|
entry_data: RuntimeEntryData = DomainData.get(hass).get_entry_data(entry)
|
||||||
entry_data.info[info_type] = {}
|
entry_data.info[info_type] = {}
|
||||||
entry_data.state.setdefault(state_type, {})
|
entry_data.state.setdefault(state_type, {})
|
||||||
|
platform = entity_platform.async_get_current_platform()
|
||||||
|
|
||||||
@callback
|
@callback
|
||||||
def async_list_entities(infos: list[EntityInfo]) -> None:
|
def async_list_entities(infos: list[EntityInfo]) -> None:
|
||||||
@ -71,7 +73,7 @@ async def platform_async_setup_entry(
|
|||||||
for info in infos:
|
for info in infos:
|
||||||
if not current_infos.pop(info.key, None):
|
if not current_infos.pop(info.key, None):
|
||||||
# Create new entity
|
# Create new entity
|
||||||
entity = entity_type(entry_data, info, state_type)
|
entity = entity_type(entry_data, platform.domain, info, state_type)
|
||||||
add_entities.append(entity)
|
add_entities.append(entity)
|
||||||
new_infos[info.key] = info
|
new_infos[info.key] = info
|
||||||
|
|
||||||
@ -145,10 +147,12 @@ class EsphomeEntity(Entity, Generic[_InfoT, _StateT]):
|
|||||||
def __init__(
|
def __init__(
|
||||||
self,
|
self,
|
||||||
entry_data: RuntimeEntryData,
|
entry_data: RuntimeEntryData,
|
||||||
|
domain: str,
|
||||||
entity_info: EntityInfo,
|
entity_info: EntityInfo,
|
||||||
state_type: type[_StateT],
|
state_type: type[_StateT],
|
||||||
) -> None:
|
) -> None:
|
||||||
"""Initialize."""
|
"""Initialize."""
|
||||||
|
|
||||||
self._entry_data = entry_data
|
self._entry_data = entry_data
|
||||||
self._on_entry_data_changed()
|
self._on_entry_data_changed()
|
||||||
self._key = entity_info.key
|
self._key = entity_info.key
|
||||||
@ -157,6 +161,9 @@ class EsphomeEntity(Entity, Generic[_InfoT, _StateT]):
|
|||||||
assert entry_data.device_info is not None
|
assert entry_data.device_info is not None
|
||||||
device_info = entry_data.device_info
|
device_info = entry_data.device_info
|
||||||
self._device_info = device_info
|
self._device_info = device_info
|
||||||
|
if object_id := entity_info.object_id:
|
||||||
|
# Use the object_id to suggest the entity_id
|
||||||
|
self.entity_id = f"{domain}.{device_info.name}_{object_id}"
|
||||||
self._attr_has_entity_name = bool(device_info.friendly_name)
|
self._attr_has_entity_name = bool(device_info.friendly_name)
|
||||||
self._attr_device_info = DeviceInfo(
|
self._attr_device_info = DeviceInfo(
|
||||||
connections={(dr.CONNECTION_NETWORK_MAC, device_info.mac_address)}
|
connections={(dr.CONNECTION_NETWORK_MAC, device_info.mac_address)}
|
||||||
|
@ -61,7 +61,7 @@ async def test_generic_alarm_control_panel_requires_code(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("alarm_control_panel.test_my_alarm_control_panel")
|
state = hass.states.get("alarm_control_panel.test_myalarm_control_panel")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_ALARM_ARMED_AWAY
|
assert state.state == STATE_ALARM_ARMED_AWAY
|
||||||
|
|
||||||
@ -69,7 +69,7 @@ async def test_generic_alarm_control_panel_requires_code(
|
|||||||
ALARM_CONTROL_PANEL_DOMAIN,
|
ALARM_CONTROL_PANEL_DOMAIN,
|
||||||
SERVICE_ALARM_ARM_AWAY,
|
SERVICE_ALARM_ARM_AWAY,
|
||||||
{
|
{
|
||||||
ATTR_ENTITY_ID: "alarm_control_panel.test_my_alarm_control_panel",
|
ATTR_ENTITY_ID: "alarm_control_panel.test_myalarm_control_panel",
|
||||||
ATTR_CODE: 1234,
|
ATTR_CODE: 1234,
|
||||||
},
|
},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
@ -83,7 +83,7 @@ async def test_generic_alarm_control_panel_requires_code(
|
|||||||
ALARM_CONTROL_PANEL_DOMAIN,
|
ALARM_CONTROL_PANEL_DOMAIN,
|
||||||
SERVICE_ALARM_ARM_CUSTOM_BYPASS,
|
SERVICE_ALARM_ARM_CUSTOM_BYPASS,
|
||||||
{
|
{
|
||||||
ATTR_ENTITY_ID: "alarm_control_panel.test_my_alarm_control_panel",
|
ATTR_ENTITY_ID: "alarm_control_panel.test_myalarm_control_panel",
|
||||||
ATTR_CODE: 1234,
|
ATTR_CODE: 1234,
|
||||||
},
|
},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
@ -97,7 +97,7 @@ async def test_generic_alarm_control_panel_requires_code(
|
|||||||
ALARM_CONTROL_PANEL_DOMAIN,
|
ALARM_CONTROL_PANEL_DOMAIN,
|
||||||
SERVICE_ALARM_ARM_HOME,
|
SERVICE_ALARM_ARM_HOME,
|
||||||
{
|
{
|
||||||
ATTR_ENTITY_ID: "alarm_control_panel.test_my_alarm_control_panel",
|
ATTR_ENTITY_ID: "alarm_control_panel.test_myalarm_control_panel",
|
||||||
ATTR_CODE: 1234,
|
ATTR_CODE: 1234,
|
||||||
},
|
},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
@ -111,7 +111,7 @@ async def test_generic_alarm_control_panel_requires_code(
|
|||||||
ALARM_CONTROL_PANEL_DOMAIN,
|
ALARM_CONTROL_PANEL_DOMAIN,
|
||||||
SERVICE_ALARM_ARM_NIGHT,
|
SERVICE_ALARM_ARM_NIGHT,
|
||||||
{
|
{
|
||||||
ATTR_ENTITY_ID: "alarm_control_panel.test_my_alarm_control_panel",
|
ATTR_ENTITY_ID: "alarm_control_panel.test_myalarm_control_panel",
|
||||||
ATTR_CODE: 1234,
|
ATTR_CODE: 1234,
|
||||||
},
|
},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
@ -125,7 +125,7 @@ async def test_generic_alarm_control_panel_requires_code(
|
|||||||
ALARM_CONTROL_PANEL_DOMAIN,
|
ALARM_CONTROL_PANEL_DOMAIN,
|
||||||
SERVICE_ALARM_ARM_VACATION,
|
SERVICE_ALARM_ARM_VACATION,
|
||||||
{
|
{
|
||||||
ATTR_ENTITY_ID: "alarm_control_panel.test_my_alarm_control_panel",
|
ATTR_ENTITY_ID: "alarm_control_panel.test_myalarm_control_panel",
|
||||||
ATTR_CODE: 1234,
|
ATTR_CODE: 1234,
|
||||||
},
|
},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
@ -139,7 +139,7 @@ async def test_generic_alarm_control_panel_requires_code(
|
|||||||
ALARM_CONTROL_PANEL_DOMAIN,
|
ALARM_CONTROL_PANEL_DOMAIN,
|
||||||
SERVICE_ALARM_TRIGGER,
|
SERVICE_ALARM_TRIGGER,
|
||||||
{
|
{
|
||||||
ATTR_ENTITY_ID: "alarm_control_panel.test_my_alarm_control_panel",
|
ATTR_ENTITY_ID: "alarm_control_panel.test_myalarm_control_panel",
|
||||||
ATTR_CODE: 1234,
|
ATTR_CODE: 1234,
|
||||||
},
|
},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
@ -153,7 +153,7 @@ async def test_generic_alarm_control_panel_requires_code(
|
|||||||
ALARM_CONTROL_PANEL_DOMAIN,
|
ALARM_CONTROL_PANEL_DOMAIN,
|
||||||
SERVICE_ALARM_DISARM,
|
SERVICE_ALARM_DISARM,
|
||||||
{
|
{
|
||||||
ATTR_ENTITY_ID: "alarm_control_panel.test_my_alarm_control_panel",
|
ATTR_ENTITY_ID: "alarm_control_panel.test_myalarm_control_panel",
|
||||||
ATTR_CODE: 1234,
|
ATTR_CODE: 1234,
|
||||||
},
|
},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
@ -196,14 +196,14 @@ async def test_generic_alarm_control_panel_no_code(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("alarm_control_panel.test_my_alarm_control_panel")
|
state = hass.states.get("alarm_control_panel.test_myalarm_control_panel")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_ALARM_ARMED_AWAY
|
assert state.state == STATE_ALARM_ARMED_AWAY
|
||||||
|
|
||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
ALARM_CONTROL_PANEL_DOMAIN,
|
ALARM_CONTROL_PANEL_DOMAIN,
|
||||||
SERVICE_ALARM_DISARM,
|
SERVICE_ALARM_DISARM,
|
||||||
{ATTR_ENTITY_ID: "alarm_control_panel.test_my_alarm_control_panel"},
|
{ATTR_ENTITY_ID: "alarm_control_panel.test_myalarm_control_panel"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.alarm_control_panel_command.assert_has_calls(
|
mock_client.alarm_control_panel_command.assert_has_calls(
|
||||||
@ -242,6 +242,6 @@ async def test_generic_alarm_control_panel_missing_state(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("alarm_control_panel.test_my_alarm_control_panel")
|
state = hass.states.get("alarm_control_panel.test_myalarm_control_panel")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_UNKNOWN
|
assert state.state == STATE_UNKNOWN
|
||||||
|
@ -73,7 +73,7 @@ async def test_binary_sensor_generic_entity(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("binary_sensor.test_my_binary_sensor")
|
state = hass.states.get("binary_sensor.test_mybinary_sensor")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == hass_state
|
assert state.state == hass_state
|
||||||
|
|
||||||
@ -104,7 +104,7 @@ async def test_status_binary_sensor(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("binary_sensor.test_my_binary_sensor")
|
state = hass.states.get("binary_sensor.test_mybinary_sensor")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_ON
|
assert state.state == STATE_ON
|
||||||
|
|
||||||
@ -134,7 +134,7 @@ async def test_binary_sensor_missing_state(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("binary_sensor.test_my_binary_sensor")
|
state = hass.states.get("binary_sensor.test_mybinary_sensor")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_UNKNOWN
|
assert state.state == STATE_UNKNOWN
|
||||||
|
|
||||||
@ -164,12 +164,12 @@ async def test_binary_sensor_has_state_false(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("binary_sensor.test_my_binary_sensor")
|
state = hass.states.get("binary_sensor.test_mybinary_sensor")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_UNKNOWN
|
assert state.state == STATE_UNKNOWN
|
||||||
|
|
||||||
mock_device.set_state(BinarySensorState(key=1, state=True, missing_state=False))
|
mock_device.set_state(BinarySensorState(key=1, state=True, missing_state=False))
|
||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
state = hass.states.get("binary_sensor.test_my_binary_sensor")
|
state = hass.states.get("binary_sensor.test_mybinary_sensor")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_ON
|
assert state.state == STATE_ON
|
||||||
|
@ -33,22 +33,22 @@ async def test_button_generic_entity(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("button.test_my_button")
|
state = hass.states.get("button.test_mybutton")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_UNKNOWN
|
assert state.state == STATE_UNKNOWN
|
||||||
|
|
||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
BUTTON_DOMAIN,
|
BUTTON_DOMAIN,
|
||||||
SERVICE_PRESS,
|
SERVICE_PRESS,
|
||||||
{ATTR_ENTITY_ID: "button.test_my_button"},
|
{ATTR_ENTITY_ID: "button.test_mybutton"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.button_command.assert_has_calls([call(1)])
|
mock_client.button_command.assert_has_calls([call(1)])
|
||||||
state = hass.states.get("button.test_my_button")
|
state = hass.states.get("button.test_mybutton")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state != STATE_UNKNOWN
|
assert state.state != STATE_UNKNOWN
|
||||||
|
|
||||||
await mock_device.mock_disconnect(False)
|
await mock_device.mock_disconnect(False)
|
||||||
state = hass.states.get("button.test_my_button")
|
state = hass.states.get("button.test_mybutton")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_UNAVAILABLE
|
assert state.state == STATE_UNAVAILABLE
|
||||||
|
@ -54,7 +54,7 @@ async def test_camera_single_image(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("camera.test_my_camera")
|
state = hass.states.get("camera.test_mycamera")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_IDLE
|
assert state.state == STATE_IDLE
|
||||||
|
|
||||||
@ -64,9 +64,9 @@ async def test_camera_single_image(
|
|||||||
mock_client.request_single_image = _mock_camera_image
|
mock_client.request_single_image = _mock_camera_image
|
||||||
|
|
||||||
client = await hass_client()
|
client = await hass_client()
|
||||||
resp = await client.get("/api/camera_proxy/camera.test_my_camera")
|
resp = await client.get("/api/camera_proxy/camera.test_mycamera")
|
||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
state = hass.states.get("camera.test_my_camera")
|
state = hass.states.get("camera.test_mycamera")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_IDLE
|
assert state.state == STATE_IDLE
|
||||||
|
|
||||||
@ -102,15 +102,15 @@ async def test_camera_single_image_unavailable_before_requested(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("camera.test_my_camera")
|
state = hass.states.get("camera.test_mycamera")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_IDLE
|
assert state.state == STATE_IDLE
|
||||||
await mock_device.mock_disconnect(False)
|
await mock_device.mock_disconnect(False)
|
||||||
|
|
||||||
client = await hass_client()
|
client = await hass_client()
|
||||||
resp = await client.get("/api/camera_proxy/camera.test_my_camera")
|
resp = await client.get("/api/camera_proxy/camera.test_mycamera")
|
||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
state = hass.states.get("camera.test_my_camera")
|
state = hass.states.get("camera.test_mycamera")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_UNAVAILABLE
|
assert state.state == STATE_UNAVAILABLE
|
||||||
|
|
||||||
@ -143,7 +143,7 @@ async def test_camera_single_image_unavailable_during_request(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("camera.test_my_camera")
|
state = hass.states.get("camera.test_mycamera")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_IDLE
|
assert state.state == STATE_IDLE
|
||||||
|
|
||||||
@ -153,9 +153,9 @@ async def test_camera_single_image_unavailable_during_request(
|
|||||||
mock_client.request_single_image = _mock_camera_image
|
mock_client.request_single_image = _mock_camera_image
|
||||||
|
|
||||||
client = await hass_client()
|
client = await hass_client()
|
||||||
resp = await client.get("/api/camera_proxy/camera.test_my_camera")
|
resp = await client.get("/api/camera_proxy/camera.test_mycamera")
|
||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
state = hass.states.get("camera.test_my_camera")
|
state = hass.states.get("camera.test_mycamera")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_UNAVAILABLE
|
assert state.state == STATE_UNAVAILABLE
|
||||||
|
|
||||||
@ -188,7 +188,7 @@ async def test_camera_stream(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("camera.test_my_camera")
|
state = hass.states.get("camera.test_mycamera")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_IDLE
|
assert state.state == STATE_IDLE
|
||||||
remaining_responses = 3
|
remaining_responses = 3
|
||||||
@ -204,9 +204,9 @@ async def test_camera_stream(
|
|||||||
mock_client.request_single_image = _mock_camera_image
|
mock_client.request_single_image = _mock_camera_image
|
||||||
|
|
||||||
client = await hass_client()
|
client = await hass_client()
|
||||||
resp = await client.get("/api/camera_proxy_stream/camera.test_my_camera")
|
resp = await client.get("/api/camera_proxy_stream/camera.test_mycamera")
|
||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
state = hass.states.get("camera.test_my_camera")
|
state = hass.states.get("camera.test_mycamera")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_IDLE
|
assert state.state == STATE_IDLE
|
||||||
|
|
||||||
@ -248,16 +248,16 @@ async def test_camera_stream_unavailable(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("camera.test_my_camera")
|
state = hass.states.get("camera.test_mycamera")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_IDLE
|
assert state.state == STATE_IDLE
|
||||||
|
|
||||||
await mock_device.mock_disconnect(False)
|
await mock_device.mock_disconnect(False)
|
||||||
|
|
||||||
client = await hass_client()
|
client = await hass_client()
|
||||||
await client.get("/api/camera_proxy_stream/camera.test_my_camera")
|
await client.get("/api/camera_proxy_stream/camera.test_mycamera")
|
||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
state = hass.states.get("camera.test_my_camera")
|
state = hass.states.get("camera.test_mycamera")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_UNAVAILABLE
|
assert state.state == STATE_UNAVAILABLE
|
||||||
|
|
||||||
@ -288,7 +288,7 @@ async def test_camera_stream_with_disconnection(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("camera.test_my_camera")
|
state = hass.states.get("camera.test_mycamera")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_IDLE
|
assert state.state == STATE_IDLE
|
||||||
remaining_responses = 3
|
remaining_responses = 3
|
||||||
@ -306,8 +306,8 @@ async def test_camera_stream_with_disconnection(
|
|||||||
mock_client.request_single_image = _mock_camera_image
|
mock_client.request_single_image = _mock_camera_image
|
||||||
|
|
||||||
client = await hass_client()
|
client = await hass_client()
|
||||||
await client.get("/api/camera_proxy_stream/camera.test_my_camera")
|
await client.get("/api/camera_proxy_stream/camera.test_mycamera")
|
||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
state = hass.states.get("camera.test_my_camera")
|
state = hass.states.get("camera.test_mycamera")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_UNAVAILABLE
|
assert state.state == STATE_UNAVAILABLE
|
||||||
|
@ -71,14 +71,14 @@ async def test_climate_entity(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("climate.test_my_climate")
|
state = hass.states.get("climate.test_myclimate")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == HVACMode.COOL
|
assert state.state == HVACMode.COOL
|
||||||
|
|
||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
CLIMATE_DOMAIN,
|
CLIMATE_DOMAIN,
|
||||||
SERVICE_SET_TEMPERATURE,
|
SERVICE_SET_TEMPERATURE,
|
||||||
{ATTR_ENTITY_ID: "climate.test_my_climate", ATTR_TEMPERATURE: 25},
|
{ATTR_ENTITY_ID: "climate.test_myclimate", ATTR_TEMPERATURE: 25},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.climate_command.assert_has_calls([call(key=1, target_temperature=25.0)])
|
mock_client.climate_command.assert_has_calls([call(key=1, target_temperature=25.0)])
|
||||||
@ -123,14 +123,14 @@ async def test_climate_entity_with_step_and_two_point(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("climate.test_my_climate")
|
state = hass.states.get("climate.test_myclimate")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == HVACMode.COOL
|
assert state.state == HVACMode.COOL
|
||||||
|
|
||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
CLIMATE_DOMAIN,
|
CLIMATE_DOMAIN,
|
||||||
SERVICE_SET_TEMPERATURE,
|
SERVICE_SET_TEMPERATURE,
|
||||||
{ATTR_ENTITY_ID: "climate.test_my_climate", ATTR_TEMPERATURE: 25},
|
{ATTR_ENTITY_ID: "climate.test_myclimate", ATTR_TEMPERATURE: 25},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.climate_command.assert_has_calls([call(key=1, target_temperature=25.0)])
|
mock_client.climate_command.assert_has_calls([call(key=1, target_temperature=25.0)])
|
||||||
@ -140,7 +140,7 @@ async def test_climate_entity_with_step_and_two_point(
|
|||||||
CLIMATE_DOMAIN,
|
CLIMATE_DOMAIN,
|
||||||
SERVICE_SET_TEMPERATURE,
|
SERVICE_SET_TEMPERATURE,
|
||||||
{
|
{
|
||||||
ATTR_ENTITY_ID: "climate.test_my_climate",
|
ATTR_ENTITY_ID: "climate.test_myclimate",
|
||||||
ATTR_HVAC_MODE: HVACMode.AUTO,
|
ATTR_HVAC_MODE: HVACMode.AUTO,
|
||||||
ATTR_TARGET_TEMP_LOW: 20,
|
ATTR_TARGET_TEMP_LOW: 20,
|
||||||
ATTR_TARGET_TEMP_HIGH: 30,
|
ATTR_TARGET_TEMP_HIGH: 30,
|
||||||
@ -202,14 +202,14 @@ async def test_climate_entity_with_step_and_target_temp(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("climate.test_my_climate")
|
state = hass.states.get("climate.test_myclimate")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == HVACMode.COOL
|
assert state.state == HVACMode.COOL
|
||||||
|
|
||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
CLIMATE_DOMAIN,
|
CLIMATE_DOMAIN,
|
||||||
SERVICE_SET_TEMPERATURE,
|
SERVICE_SET_TEMPERATURE,
|
||||||
{ATTR_ENTITY_ID: "climate.test_my_climate", ATTR_TEMPERATURE: 25},
|
{ATTR_ENTITY_ID: "climate.test_myclimate", ATTR_TEMPERATURE: 25},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.climate_command.assert_has_calls([call(key=1, target_temperature=25.0)])
|
mock_client.climate_command.assert_has_calls([call(key=1, target_temperature=25.0)])
|
||||||
@ -219,7 +219,7 @@ async def test_climate_entity_with_step_and_target_temp(
|
|||||||
CLIMATE_DOMAIN,
|
CLIMATE_DOMAIN,
|
||||||
SERVICE_SET_TEMPERATURE,
|
SERVICE_SET_TEMPERATURE,
|
||||||
{
|
{
|
||||||
ATTR_ENTITY_ID: "climate.test_my_climate",
|
ATTR_ENTITY_ID: "climate.test_myclimate",
|
||||||
ATTR_HVAC_MODE: HVACMode.AUTO,
|
ATTR_HVAC_MODE: HVACMode.AUTO,
|
||||||
ATTR_TARGET_TEMP_LOW: 20,
|
ATTR_TARGET_TEMP_LOW: 20,
|
||||||
ATTR_TARGET_TEMP_HIGH: 30,
|
ATTR_TARGET_TEMP_HIGH: 30,
|
||||||
@ -242,7 +242,7 @@ async def test_climate_entity_with_step_and_target_temp(
|
|||||||
CLIMATE_DOMAIN,
|
CLIMATE_DOMAIN,
|
||||||
SERVICE_SET_HVAC_MODE,
|
SERVICE_SET_HVAC_MODE,
|
||||||
{
|
{
|
||||||
ATTR_ENTITY_ID: "climate.test_my_climate",
|
ATTR_ENTITY_ID: "climate.test_myclimate",
|
||||||
ATTR_HVAC_MODE: HVACMode.HEAT,
|
ATTR_HVAC_MODE: HVACMode.HEAT,
|
||||||
},
|
},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
@ -260,7 +260,7 @@ async def test_climate_entity_with_step_and_target_temp(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
CLIMATE_DOMAIN,
|
CLIMATE_DOMAIN,
|
||||||
SERVICE_SET_PRESET_MODE,
|
SERVICE_SET_PRESET_MODE,
|
||||||
{ATTR_ENTITY_ID: "climate.test_my_climate", ATTR_PRESET_MODE: "away"},
|
{ATTR_ENTITY_ID: "climate.test_myclimate", ATTR_PRESET_MODE: "away"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.climate_command.assert_has_calls(
|
mock_client.climate_command.assert_has_calls(
|
||||||
@ -276,7 +276,7 @@ async def test_climate_entity_with_step_and_target_temp(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
CLIMATE_DOMAIN,
|
CLIMATE_DOMAIN,
|
||||||
SERVICE_SET_PRESET_MODE,
|
SERVICE_SET_PRESET_MODE,
|
||||||
{ATTR_ENTITY_ID: "climate.test_my_climate", ATTR_PRESET_MODE: "preset1"},
|
{ATTR_ENTITY_ID: "climate.test_myclimate", ATTR_PRESET_MODE: "preset1"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.climate_command.assert_has_calls([call(key=1, custom_preset="preset1")])
|
mock_client.climate_command.assert_has_calls([call(key=1, custom_preset="preset1")])
|
||||||
@ -285,7 +285,7 @@ async def test_climate_entity_with_step_and_target_temp(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
CLIMATE_DOMAIN,
|
CLIMATE_DOMAIN,
|
||||||
SERVICE_SET_FAN_MODE,
|
SERVICE_SET_FAN_MODE,
|
||||||
{ATTR_ENTITY_ID: "climate.test_my_climate", ATTR_FAN_MODE: FAN_HIGH},
|
{ATTR_ENTITY_ID: "climate.test_myclimate", ATTR_FAN_MODE: FAN_HIGH},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.climate_command.assert_has_calls(
|
mock_client.climate_command.assert_has_calls(
|
||||||
@ -296,7 +296,7 @@ async def test_climate_entity_with_step_and_target_temp(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
CLIMATE_DOMAIN,
|
CLIMATE_DOMAIN,
|
||||||
SERVICE_SET_FAN_MODE,
|
SERVICE_SET_FAN_MODE,
|
||||||
{ATTR_ENTITY_ID: "climate.test_my_climate", ATTR_FAN_MODE: "fan2"},
|
{ATTR_ENTITY_ID: "climate.test_myclimate", ATTR_FAN_MODE: "fan2"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.climate_command.assert_has_calls([call(key=1, custom_fan_mode="fan2")])
|
mock_client.climate_command.assert_has_calls([call(key=1, custom_fan_mode="fan2")])
|
||||||
@ -305,7 +305,7 @@ async def test_climate_entity_with_step_and_target_temp(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
CLIMATE_DOMAIN,
|
CLIMATE_DOMAIN,
|
||||||
SERVICE_SET_SWING_MODE,
|
SERVICE_SET_SWING_MODE,
|
||||||
{ATTR_ENTITY_ID: "climate.test_my_climate", ATTR_SWING_MODE: SWING_BOTH},
|
{ATTR_ENTITY_ID: "climate.test_myclimate", ATTR_SWING_MODE: SWING_BOTH},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.climate_command.assert_has_calls(
|
mock_client.climate_command.assert_has_calls(
|
||||||
|
@ -72,7 +72,7 @@ async def test_cover_entity(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("cover.test_my_cover")
|
state = hass.states.get("cover.test_mycover")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_OPENING
|
assert state.state == STATE_OPENING
|
||||||
assert state.attributes[ATTR_CURRENT_POSITION] == 50
|
assert state.attributes[ATTR_CURRENT_POSITION] == 50
|
||||||
@ -81,7 +81,7 @@ async def test_cover_entity(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
COVER_DOMAIN,
|
COVER_DOMAIN,
|
||||||
SERVICE_CLOSE_COVER,
|
SERVICE_CLOSE_COVER,
|
||||||
{ATTR_ENTITY_ID: "cover.test_my_cover"},
|
{ATTR_ENTITY_ID: "cover.test_mycover"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.cover_command.assert_has_calls([call(key=1, position=0.0)])
|
mock_client.cover_command.assert_has_calls([call(key=1, position=0.0)])
|
||||||
@ -90,7 +90,7 @@ async def test_cover_entity(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
COVER_DOMAIN,
|
COVER_DOMAIN,
|
||||||
SERVICE_OPEN_COVER,
|
SERVICE_OPEN_COVER,
|
||||||
{ATTR_ENTITY_ID: "cover.test_my_cover"},
|
{ATTR_ENTITY_ID: "cover.test_mycover"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.cover_command.assert_has_calls([call(key=1, position=1.0)])
|
mock_client.cover_command.assert_has_calls([call(key=1, position=1.0)])
|
||||||
@ -99,7 +99,7 @@ async def test_cover_entity(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
COVER_DOMAIN,
|
COVER_DOMAIN,
|
||||||
SERVICE_SET_COVER_POSITION,
|
SERVICE_SET_COVER_POSITION,
|
||||||
{ATTR_ENTITY_ID: "cover.test_my_cover", ATTR_POSITION: 50},
|
{ATTR_ENTITY_ID: "cover.test_mycover", ATTR_POSITION: 50},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.cover_command.assert_has_calls([call(key=1, position=0.5)])
|
mock_client.cover_command.assert_has_calls([call(key=1, position=0.5)])
|
||||||
@ -108,7 +108,7 @@ async def test_cover_entity(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
COVER_DOMAIN,
|
COVER_DOMAIN,
|
||||||
SERVICE_STOP_COVER,
|
SERVICE_STOP_COVER,
|
||||||
{ATTR_ENTITY_ID: "cover.test_my_cover"},
|
{ATTR_ENTITY_ID: "cover.test_mycover"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.cover_command.assert_has_calls([call(key=1, stop=True)])
|
mock_client.cover_command.assert_has_calls([call(key=1, stop=True)])
|
||||||
@ -117,7 +117,7 @@ async def test_cover_entity(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
COVER_DOMAIN,
|
COVER_DOMAIN,
|
||||||
SERVICE_OPEN_COVER_TILT,
|
SERVICE_OPEN_COVER_TILT,
|
||||||
{ATTR_ENTITY_ID: "cover.test_my_cover"},
|
{ATTR_ENTITY_ID: "cover.test_mycover"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.cover_command.assert_has_calls([call(key=1, tilt=1.0)])
|
mock_client.cover_command.assert_has_calls([call(key=1, tilt=1.0)])
|
||||||
@ -126,7 +126,7 @@ async def test_cover_entity(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
COVER_DOMAIN,
|
COVER_DOMAIN,
|
||||||
SERVICE_CLOSE_COVER_TILT,
|
SERVICE_CLOSE_COVER_TILT,
|
||||||
{ATTR_ENTITY_ID: "cover.test_my_cover"},
|
{ATTR_ENTITY_ID: "cover.test_mycover"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.cover_command.assert_has_calls([call(key=1, tilt=0.0)])
|
mock_client.cover_command.assert_has_calls([call(key=1, tilt=0.0)])
|
||||||
@ -135,7 +135,7 @@ async def test_cover_entity(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
COVER_DOMAIN,
|
COVER_DOMAIN,
|
||||||
SERVICE_SET_COVER_TILT_POSITION,
|
SERVICE_SET_COVER_TILT_POSITION,
|
||||||
{ATTR_ENTITY_ID: "cover.test_my_cover", ATTR_TILT_POSITION: 50},
|
{ATTR_ENTITY_ID: "cover.test_mycover", ATTR_TILT_POSITION: 50},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.cover_command.assert_has_calls([call(key=1, tilt=0.5)])
|
mock_client.cover_command.assert_has_calls([call(key=1, tilt=0.5)])
|
||||||
@ -145,7 +145,7 @@ async def test_cover_entity(
|
|||||||
CoverState(key=1, position=0.0, current_operation=CoverOperation.IDLE)
|
CoverState(key=1, position=0.0, current_operation=CoverOperation.IDLE)
|
||||||
)
|
)
|
||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
state = hass.states.get("cover.test_my_cover")
|
state = hass.states.get("cover.test_mycover")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_CLOSED
|
assert state.state == STATE_CLOSED
|
||||||
|
|
||||||
@ -153,7 +153,7 @@ async def test_cover_entity(
|
|||||||
CoverState(key=1, position=0.5, current_operation=CoverOperation.IS_CLOSING)
|
CoverState(key=1, position=0.5, current_operation=CoverOperation.IS_CLOSING)
|
||||||
)
|
)
|
||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
state = hass.states.get("cover.test_my_cover")
|
state = hass.states.get("cover.test_mycover")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_CLOSING
|
assert state.state == STATE_CLOSING
|
||||||
|
|
||||||
@ -161,7 +161,7 @@ async def test_cover_entity(
|
|||||||
CoverState(key=1, position=1.0, current_operation=CoverOperation.IDLE)
|
CoverState(key=1, position=1.0, current_operation=CoverOperation.IDLE)
|
||||||
)
|
)
|
||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
state = hass.states.get("cover.test_my_cover")
|
state = hass.states.get("cover.test_mycover")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_OPEN
|
assert state.state == STATE_OPEN
|
||||||
|
|
||||||
@ -201,7 +201,7 @@ async def test_cover_entity_without_position(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("cover.test_my_cover")
|
state = hass.states.get("cover.test_mycover")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_OPENING
|
assert state.state == STATE_OPENING
|
||||||
assert ATTR_CURRENT_TILT_POSITION not in state.attributes
|
assert ATTR_CURRENT_TILT_POSITION not in state.attributes
|
||||||
|
@ -55,10 +55,10 @@ async def test_entities_removed(
|
|||||||
entry = mock_device.entry
|
entry = mock_device.entry
|
||||||
entry_id = entry.entry_id
|
entry_id = entry.entry_id
|
||||||
storage_key = f"esphome.{entry_id}"
|
storage_key = f"esphome.{entry_id}"
|
||||||
state = hass.states.get("binary_sensor.test_my_binary_sensor")
|
state = hass.states.get("binary_sensor.test_mybinary_sensor")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_ON
|
assert state.state == STATE_ON
|
||||||
state = hass.states.get("binary_sensor.test_my_binary_sensor_to_be_removed")
|
state = hass.states.get("binary_sensor.test_mybinary_sensor_to_be_removed")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_ON
|
assert state.state == STATE_ON
|
||||||
|
|
||||||
@ -67,10 +67,10 @@ async def test_entities_removed(
|
|||||||
|
|
||||||
assert len(hass_storage[storage_key]["data"]["binary_sensor"]) == 2
|
assert len(hass_storage[storage_key]["data"]["binary_sensor"]) == 2
|
||||||
|
|
||||||
state = hass.states.get("binary_sensor.test_my_binary_sensor")
|
state = hass.states.get("binary_sensor.test_mybinary_sensor")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.attributes[ATTR_RESTORED] is True
|
assert state.attributes[ATTR_RESTORED] is True
|
||||||
state = hass.states.get("binary_sensor.test_my_binary_sensor_to_be_removed")
|
state = hass.states.get("binary_sensor.test_mybinary_sensor_to_be_removed")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.attributes[ATTR_RESTORED] is True
|
assert state.attributes[ATTR_RESTORED] is True
|
||||||
|
|
||||||
@ -93,11 +93,40 @@ async def test_entities_removed(
|
|||||||
entry=entry,
|
entry=entry,
|
||||||
)
|
)
|
||||||
assert mock_device.entry.entry_id == entry_id
|
assert mock_device.entry.entry_id == entry_id
|
||||||
state = hass.states.get("binary_sensor.test_my_binary_sensor")
|
state = hass.states.get("binary_sensor.test_mybinary_sensor")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_ON
|
assert state.state == STATE_ON
|
||||||
state = hass.states.get("binary_sensor.test_my_binary_sensor_to_be_removed")
|
state = hass.states.get("binary_sensor.test_mybinary_sensor_to_be_removed")
|
||||||
assert state is None
|
assert state is None
|
||||||
await hass.config_entries.async_unload(entry.entry_id)
|
await hass.config_entries.async_unload(entry.entry_id)
|
||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
assert len(hass_storage[storage_key]["data"]["binary_sensor"]) == 1
|
assert len(hass_storage[storage_key]["data"]["binary_sensor"]) == 1
|
||||||
|
|
||||||
|
|
||||||
|
async def test_entity_info_object_ids(
|
||||||
|
hass: HomeAssistant,
|
||||||
|
mock_client: APIClient,
|
||||||
|
mock_esphome_device: Callable[
|
||||||
|
[APIClient, list[EntityInfo], list[UserService], list[EntityState]],
|
||||||
|
Awaitable[MockESPHomeDevice],
|
||||||
|
],
|
||||||
|
) -> None:
|
||||||
|
"""Test how object ids affect entity id."""
|
||||||
|
entity_info = [
|
||||||
|
BinarySensorInfo(
|
||||||
|
object_id="object_id_is_used",
|
||||||
|
key=1,
|
||||||
|
name="my binary_sensor",
|
||||||
|
unique_id="my_binary_sensor",
|
||||||
|
)
|
||||||
|
]
|
||||||
|
states = []
|
||||||
|
user_service = []
|
||||||
|
await mock_esphome_device(
|
||||||
|
mock_client=mock_client,
|
||||||
|
entity_info=entity_info,
|
||||||
|
user_service=user_service,
|
||||||
|
states=states,
|
||||||
|
)
|
||||||
|
state = hass.states.get("binary_sensor.test_object_id_is_used")
|
||||||
|
assert state is not None
|
||||||
|
@ -61,14 +61,14 @@ async def test_fan_entity_with_all_features_old_api(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("fan.test_my_fan")
|
state = hass.states.get("fan.test_myfan")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_ON
|
assert state.state == STATE_ON
|
||||||
|
|
||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
FAN_DOMAIN,
|
FAN_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "fan.test_my_fan", ATTR_PERCENTAGE: 20},
|
{ATTR_ENTITY_ID: "fan.test_myfan", ATTR_PERCENTAGE: 20},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.fan_command.assert_has_calls(
|
mock_client.fan_command.assert_has_calls(
|
||||||
@ -79,7 +79,7 @@ async def test_fan_entity_with_all_features_old_api(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
FAN_DOMAIN,
|
FAN_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "fan.test_my_fan", ATTR_PERCENTAGE: 50},
|
{ATTR_ENTITY_ID: "fan.test_myfan", ATTR_PERCENTAGE: 50},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.fan_command.assert_has_calls(
|
mock_client.fan_command.assert_has_calls(
|
||||||
@ -90,7 +90,7 @@ async def test_fan_entity_with_all_features_old_api(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
FAN_DOMAIN,
|
FAN_DOMAIN,
|
||||||
SERVICE_DECREASE_SPEED,
|
SERVICE_DECREASE_SPEED,
|
||||||
{ATTR_ENTITY_ID: "fan.test_my_fan"},
|
{ATTR_ENTITY_ID: "fan.test_myfan"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.fan_command.assert_has_calls(
|
mock_client.fan_command.assert_has_calls(
|
||||||
@ -101,7 +101,7 @@ async def test_fan_entity_with_all_features_old_api(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
FAN_DOMAIN,
|
FAN_DOMAIN,
|
||||||
SERVICE_INCREASE_SPEED,
|
SERVICE_INCREASE_SPEED,
|
||||||
{ATTR_ENTITY_ID: "fan.test_my_fan"},
|
{ATTR_ENTITY_ID: "fan.test_myfan"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.fan_command.assert_has_calls(
|
mock_client.fan_command.assert_has_calls(
|
||||||
@ -112,7 +112,7 @@ async def test_fan_entity_with_all_features_old_api(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
FAN_DOMAIN,
|
FAN_DOMAIN,
|
||||||
SERVICE_TURN_OFF,
|
SERVICE_TURN_OFF,
|
||||||
{ATTR_ENTITY_ID: "fan.test_my_fan"},
|
{ATTR_ENTITY_ID: "fan.test_myfan"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.fan_command.assert_has_calls([call(key=1, state=False)])
|
mock_client.fan_command.assert_has_calls([call(key=1, state=False)])
|
||||||
@ -121,7 +121,7 @@ async def test_fan_entity_with_all_features_old_api(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
FAN_DOMAIN,
|
FAN_DOMAIN,
|
||||||
SERVICE_SET_PERCENTAGE,
|
SERVICE_SET_PERCENTAGE,
|
||||||
{ATTR_ENTITY_ID: "fan.test_my_fan", ATTR_PERCENTAGE: 100},
|
{ATTR_ENTITY_ID: "fan.test_myfan", ATTR_PERCENTAGE: 100},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.fan_command.assert_has_calls(
|
mock_client.fan_command.assert_has_calls(
|
||||||
@ -163,14 +163,14 @@ async def test_fan_entity_with_all_features_new_api(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("fan.test_my_fan")
|
state = hass.states.get("fan.test_myfan")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_ON
|
assert state.state == STATE_ON
|
||||||
|
|
||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
FAN_DOMAIN,
|
FAN_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "fan.test_my_fan", ATTR_PERCENTAGE: 20},
|
{ATTR_ENTITY_ID: "fan.test_myfan", ATTR_PERCENTAGE: 20},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.fan_command.assert_has_calls([call(key=1, speed_level=1, state=True)])
|
mock_client.fan_command.assert_has_calls([call(key=1, speed_level=1, state=True)])
|
||||||
@ -179,7 +179,7 @@ async def test_fan_entity_with_all_features_new_api(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
FAN_DOMAIN,
|
FAN_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "fan.test_my_fan", ATTR_PERCENTAGE: 50},
|
{ATTR_ENTITY_ID: "fan.test_myfan", ATTR_PERCENTAGE: 50},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.fan_command.assert_has_calls([call(key=1, speed_level=2, state=True)])
|
mock_client.fan_command.assert_has_calls([call(key=1, speed_level=2, state=True)])
|
||||||
@ -188,7 +188,7 @@ async def test_fan_entity_with_all_features_new_api(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
FAN_DOMAIN,
|
FAN_DOMAIN,
|
||||||
SERVICE_DECREASE_SPEED,
|
SERVICE_DECREASE_SPEED,
|
||||||
{ATTR_ENTITY_ID: "fan.test_my_fan"},
|
{ATTR_ENTITY_ID: "fan.test_myfan"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.fan_command.assert_has_calls([call(key=1, speed_level=2, state=True)])
|
mock_client.fan_command.assert_has_calls([call(key=1, speed_level=2, state=True)])
|
||||||
@ -197,7 +197,7 @@ async def test_fan_entity_with_all_features_new_api(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
FAN_DOMAIN,
|
FAN_DOMAIN,
|
||||||
SERVICE_INCREASE_SPEED,
|
SERVICE_INCREASE_SPEED,
|
||||||
{ATTR_ENTITY_ID: "fan.test_my_fan"},
|
{ATTR_ENTITY_ID: "fan.test_myfan"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.fan_command.assert_has_calls([call(key=1, speed_level=4, state=True)])
|
mock_client.fan_command.assert_has_calls([call(key=1, speed_level=4, state=True)])
|
||||||
@ -206,7 +206,7 @@ async def test_fan_entity_with_all_features_new_api(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
FAN_DOMAIN,
|
FAN_DOMAIN,
|
||||||
SERVICE_TURN_OFF,
|
SERVICE_TURN_OFF,
|
||||||
{ATTR_ENTITY_ID: "fan.test_my_fan"},
|
{ATTR_ENTITY_ID: "fan.test_myfan"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.fan_command.assert_has_calls([call(key=1, state=False)])
|
mock_client.fan_command.assert_has_calls([call(key=1, state=False)])
|
||||||
@ -215,7 +215,7 @@ async def test_fan_entity_with_all_features_new_api(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
FAN_DOMAIN,
|
FAN_DOMAIN,
|
||||||
SERVICE_SET_PERCENTAGE,
|
SERVICE_SET_PERCENTAGE,
|
||||||
{ATTR_ENTITY_ID: "fan.test_my_fan", ATTR_PERCENTAGE: 100},
|
{ATTR_ENTITY_ID: "fan.test_myfan", ATTR_PERCENTAGE: 100},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.fan_command.assert_has_calls([call(key=1, speed_level=4, state=True)])
|
mock_client.fan_command.assert_has_calls([call(key=1, speed_level=4, state=True)])
|
||||||
@ -224,7 +224,7 @@ async def test_fan_entity_with_all_features_new_api(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
FAN_DOMAIN,
|
FAN_DOMAIN,
|
||||||
SERVICE_SET_PERCENTAGE,
|
SERVICE_SET_PERCENTAGE,
|
||||||
{ATTR_ENTITY_ID: "fan.test_my_fan", ATTR_PERCENTAGE: 0},
|
{ATTR_ENTITY_ID: "fan.test_myfan", ATTR_PERCENTAGE: 0},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.fan_command.assert_has_calls([call(key=1, state=False)])
|
mock_client.fan_command.assert_has_calls([call(key=1, state=False)])
|
||||||
@ -233,7 +233,7 @@ async def test_fan_entity_with_all_features_new_api(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
FAN_DOMAIN,
|
FAN_DOMAIN,
|
||||||
SERVICE_OSCILLATE,
|
SERVICE_OSCILLATE,
|
||||||
{ATTR_ENTITY_ID: "fan.test_my_fan", ATTR_OSCILLATING: True},
|
{ATTR_ENTITY_ID: "fan.test_myfan", ATTR_OSCILLATING: True},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.fan_command.assert_has_calls([call(key=1, oscillating=True)])
|
mock_client.fan_command.assert_has_calls([call(key=1, oscillating=True)])
|
||||||
@ -242,7 +242,7 @@ async def test_fan_entity_with_all_features_new_api(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
FAN_DOMAIN,
|
FAN_DOMAIN,
|
||||||
SERVICE_OSCILLATE,
|
SERVICE_OSCILLATE,
|
||||||
{ATTR_ENTITY_ID: "fan.test_my_fan", ATTR_OSCILLATING: False},
|
{ATTR_ENTITY_ID: "fan.test_myfan", ATTR_OSCILLATING: False},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.fan_command.assert_has_calls([call(key=1, oscillating=False)])
|
mock_client.fan_command.assert_has_calls([call(key=1, oscillating=False)])
|
||||||
@ -251,7 +251,7 @@ async def test_fan_entity_with_all_features_new_api(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
FAN_DOMAIN,
|
FAN_DOMAIN,
|
||||||
SERVICE_SET_DIRECTION,
|
SERVICE_SET_DIRECTION,
|
||||||
{ATTR_ENTITY_ID: "fan.test_my_fan", ATTR_DIRECTION: "forward"},
|
{ATTR_ENTITY_ID: "fan.test_myfan", ATTR_DIRECTION: "forward"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.fan_command.assert_has_calls(
|
mock_client.fan_command.assert_has_calls(
|
||||||
@ -262,7 +262,7 @@ async def test_fan_entity_with_all_features_new_api(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
FAN_DOMAIN,
|
FAN_DOMAIN,
|
||||||
SERVICE_SET_DIRECTION,
|
SERVICE_SET_DIRECTION,
|
||||||
{ATTR_ENTITY_ID: "fan.test_my_fan", ATTR_DIRECTION: "reverse"},
|
{ATTR_ENTITY_ID: "fan.test_myfan", ATTR_DIRECTION: "reverse"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.fan_command.assert_has_calls(
|
mock_client.fan_command.assert_has_calls(
|
||||||
@ -295,14 +295,14 @@ async def test_fan_entity_with_no_features_new_api(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("fan.test_my_fan")
|
state = hass.states.get("fan.test_myfan")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_ON
|
assert state.state == STATE_ON
|
||||||
|
|
||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
FAN_DOMAIN,
|
FAN_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "fan.test_my_fan"},
|
{ATTR_ENTITY_ID: "fan.test_myfan"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.fan_command.assert_has_calls([call(key=1, state=True)])
|
mock_client.fan_command.assert_has_calls([call(key=1, state=True)])
|
||||||
@ -311,7 +311,7 @@ async def test_fan_entity_with_no_features_new_api(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
FAN_DOMAIN,
|
FAN_DOMAIN,
|
||||||
SERVICE_TURN_OFF,
|
SERVICE_TURN_OFF,
|
||||||
{ATTR_ENTITY_ID: "fan.test_my_fan"},
|
{ATTR_ENTITY_ID: "fan.test_myfan"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.fan_command.assert_has_calls([call(key=1, state=False)])
|
mock_client.fan_command.assert_has_calls([call(key=1, state=False)])
|
||||||
|
@ -65,14 +65,14 @@ async def test_light_on_off(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("light.test_my_light")
|
state = hass.states.get("light.test_mylight")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_ON
|
assert state.state == STATE_ON
|
||||||
|
|
||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light"},
|
{ATTR_ENTITY_ID: "light.test_mylight"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -105,14 +105,14 @@ async def test_light_brightness(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("light.test_my_light")
|
state = hass.states.get("light.test_mylight")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_ON
|
assert state.state == STATE_ON
|
||||||
|
|
||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light"},
|
{ATTR_ENTITY_ID: "light.test_mylight"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -123,7 +123,7 @@ async def test_light_brightness(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light", ATTR_BRIGHTNESS: 127},
|
{ATTR_ENTITY_ID: "light.test_mylight", ATTR_BRIGHTNESS: 127},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -141,7 +141,7 @@ async def test_light_brightness(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_OFF,
|
SERVICE_TURN_OFF,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light", ATTR_TRANSITION: 2},
|
{ATTR_ENTITY_ID: "light.test_mylight", ATTR_TRANSITION: 2},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -152,7 +152,7 @@ async def test_light_brightness(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_OFF,
|
SERVICE_TURN_OFF,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light", ATTR_FLASH: FLASH_LONG},
|
{ATTR_ENTITY_ID: "light.test_mylight", ATTR_FLASH: FLASH_LONG},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -163,7 +163,7 @@ async def test_light_brightness(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light", ATTR_TRANSITION: 2},
|
{ATTR_ENTITY_ID: "light.test_mylight", ATTR_TRANSITION: 2},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -181,7 +181,7 @@ async def test_light_brightness(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light", ATTR_FLASH: FLASH_SHORT},
|
{ATTR_ENTITY_ID: "light.test_mylight", ATTR_FLASH: FLASH_SHORT},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -223,14 +223,14 @@ async def test_light_brightness_on_off(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("light.test_my_light")
|
state = hass.states.get("light.test_mylight")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_ON
|
assert state.state == STATE_ON
|
||||||
|
|
||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light"},
|
{ATTR_ENTITY_ID: "light.test_mylight"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -248,7 +248,7 @@ async def test_light_brightness_on_off(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light", ATTR_BRIGHTNESS: 127},
|
{ATTR_ENTITY_ID: "light.test_mylight", ATTR_BRIGHTNESS: 127},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -293,14 +293,14 @@ async def test_light_legacy_white_converted_to_brightness(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("light.test_my_light")
|
state = hass.states.get("light.test_mylight")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_ON
|
assert state.state == STATE_ON
|
||||||
|
|
||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light"},
|
{ATTR_ENTITY_ID: "light.test_mylight"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -343,14 +343,14 @@ async def test_light_brightness_on_off_with_unknown_color_mode(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("light.test_my_light")
|
state = hass.states.get("light.test_mylight")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_ON
|
assert state.state == STATE_ON
|
||||||
|
|
||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light"},
|
{ATTR_ENTITY_ID: "light.test_mylight"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -369,7 +369,7 @@ async def test_light_brightness_on_off_with_unknown_color_mode(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light", ATTR_BRIGHTNESS: 127},
|
{ATTR_ENTITY_ID: "light.test_mylight", ATTR_BRIGHTNESS: 127},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -414,14 +414,14 @@ async def test_light_on_and_brightness(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("light.test_my_light")
|
state = hass.states.get("light.test_mylight")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_ON
|
assert state.state == STATE_ON
|
||||||
|
|
||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light"},
|
{ATTR_ENTITY_ID: "light.test_mylight"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -464,14 +464,14 @@ async def test_rgb_color_temp_light(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("light.test_my_light")
|
state = hass.states.get("light.test_mylight")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_ON
|
assert state.state == STATE_ON
|
||||||
|
|
||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light"},
|
{ATTR_ENTITY_ID: "light.test_mylight"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -489,7 +489,7 @@ async def test_rgb_color_temp_light(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light", ATTR_BRIGHTNESS: 127},
|
{ATTR_ENTITY_ID: "light.test_mylight", ATTR_BRIGHTNESS: 127},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -508,7 +508,7 @@ async def test_rgb_color_temp_light(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light", ATTR_COLOR_TEMP_KELVIN: 2500},
|
{ATTR_ENTITY_ID: "light.test_mylight", ATTR_COLOR_TEMP_KELVIN: 2500},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -552,14 +552,14 @@ async def test_light_rgb(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("light.test_my_light")
|
state = hass.states.get("light.test_mylight")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_ON
|
assert state.state == STATE_ON
|
||||||
|
|
||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light"},
|
{ATTR_ENTITY_ID: "light.test_mylight"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -578,7 +578,7 @@ async def test_light_rgb(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light", ATTR_BRIGHTNESS: 127},
|
{ATTR_ENTITY_ID: "light.test_mylight", ATTR_BRIGHTNESS: 127},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -599,7 +599,7 @@ async def test_light_rgb(
|
|||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{
|
{
|
||||||
ATTR_ENTITY_ID: "light.test_my_light",
|
ATTR_ENTITY_ID: "light.test_mylight",
|
||||||
ATTR_BRIGHTNESS: 127,
|
ATTR_BRIGHTNESS: 127,
|
||||||
ATTR_HS_COLOR: (100, 100),
|
ATTR_HS_COLOR: (100, 100),
|
||||||
},
|
},
|
||||||
@ -624,7 +624,7 @@ async def test_light_rgb(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light", ATTR_RGB_COLOR: (255, 255, 255)},
|
{ATTR_ENTITY_ID: "light.test_mylight", ATTR_RGB_COLOR: (255, 255, 255)},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -684,7 +684,7 @@ async def test_light_rgbw(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("light.test_my_light")
|
state = hass.states.get("light.test_mylight")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_ON
|
assert state.state == STATE_ON
|
||||||
assert state.attributes[ATTR_SUPPORTED_COLOR_MODES] == [ColorMode.RGBW]
|
assert state.attributes[ATTR_SUPPORTED_COLOR_MODES] == [ColorMode.RGBW]
|
||||||
@ -693,7 +693,7 @@ async def test_light_rgbw(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light"},
|
{ATTR_ENTITY_ID: "light.test_mylight"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -713,7 +713,7 @@ async def test_light_rgbw(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light", ATTR_BRIGHTNESS: 127},
|
{ATTR_ENTITY_ID: "light.test_mylight", ATTR_BRIGHTNESS: 127},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -735,7 +735,7 @@ async def test_light_rgbw(
|
|||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{
|
{
|
||||||
ATTR_ENTITY_ID: "light.test_my_light",
|
ATTR_ENTITY_ID: "light.test_mylight",
|
||||||
ATTR_BRIGHTNESS: 127,
|
ATTR_BRIGHTNESS: 127,
|
||||||
ATTR_HS_COLOR: (100, 100),
|
ATTR_HS_COLOR: (100, 100),
|
||||||
},
|
},
|
||||||
@ -762,7 +762,7 @@ async def test_light_rgbw(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light", ATTR_RGB_COLOR: (255, 255, 255)},
|
{ATTR_ENTITY_ID: "light.test_mylight", ATTR_RGB_COLOR: (255, 255, 255)},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -785,7 +785,7 @@ async def test_light_rgbw(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light", ATTR_RGBW_COLOR: (255, 255, 255, 255)},
|
{ATTR_ENTITY_ID: "light.test_mylight", ATTR_RGBW_COLOR: (255, 255, 255, 255)},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -855,7 +855,7 @@ async def test_light_rgbww_with_cold_warm_white_support(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("light.test_my_light")
|
state = hass.states.get("light.test_mylight")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_ON
|
assert state.state == STATE_ON
|
||||||
assert state.attributes[ATTR_SUPPORTED_COLOR_MODES] == [ColorMode.RGBWW]
|
assert state.attributes[ATTR_SUPPORTED_COLOR_MODES] == [ColorMode.RGBWW]
|
||||||
@ -865,7 +865,7 @@ async def test_light_rgbww_with_cold_warm_white_support(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light"},
|
{ATTR_ENTITY_ID: "light.test_mylight"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -887,7 +887,7 @@ async def test_light_rgbww_with_cold_warm_white_support(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light", ATTR_BRIGHTNESS: 127},
|
{ATTR_ENTITY_ID: "light.test_mylight", ATTR_BRIGHTNESS: 127},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -911,7 +911,7 @@ async def test_light_rgbww_with_cold_warm_white_support(
|
|||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{
|
{
|
||||||
ATTR_ENTITY_ID: "light.test_my_light",
|
ATTR_ENTITY_ID: "light.test_mylight",
|
||||||
ATTR_BRIGHTNESS: 127,
|
ATTR_BRIGHTNESS: 127,
|
||||||
ATTR_HS_COLOR: (100, 100),
|
ATTR_HS_COLOR: (100, 100),
|
||||||
},
|
},
|
||||||
@ -941,7 +941,7 @@ async def test_light_rgbww_with_cold_warm_white_support(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light", ATTR_RGB_COLOR: (255, 255, 255)},
|
{ATTR_ENTITY_ID: "light.test_mylight", ATTR_RGB_COLOR: (255, 255, 255)},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -967,7 +967,7 @@ async def test_light_rgbww_with_cold_warm_white_support(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light", ATTR_RGBW_COLOR: (255, 255, 255, 255)},
|
{ATTR_ENTITY_ID: "light.test_mylight", ATTR_RGBW_COLOR: (255, 255, 255, 255)},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -994,7 +994,7 @@ async def test_light_rgbww_with_cold_warm_white_support(
|
|||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{
|
{
|
||||||
ATTR_ENTITY_ID: "light.test_my_light",
|
ATTR_ENTITY_ID: "light.test_mylight",
|
||||||
ATTR_RGBWW_COLOR: (255, 255, 255, 255, 255),
|
ATTR_RGBWW_COLOR: (255, 255, 255, 255, 255),
|
||||||
},
|
},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
@ -1022,7 +1022,7 @@ async def test_light_rgbww_with_cold_warm_white_support(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light", ATTR_COLOR_TEMP_KELVIN: 2500},
|
{ATTR_ENTITY_ID: "light.test_mylight", ATTR_COLOR_TEMP_KELVIN: 2500},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -1092,7 +1092,7 @@ async def test_light_rgbww_without_cold_warm_white_support(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("light.test_my_light")
|
state = hass.states.get("light.test_mylight")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_ON
|
assert state.state == STATE_ON
|
||||||
assert state.attributes[ATTR_SUPPORTED_COLOR_MODES] == [ColorMode.RGBWW]
|
assert state.attributes[ATTR_SUPPORTED_COLOR_MODES] == [ColorMode.RGBWW]
|
||||||
@ -1102,7 +1102,7 @@ async def test_light_rgbww_without_cold_warm_white_support(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light"},
|
{ATTR_ENTITY_ID: "light.test_mylight"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -1123,7 +1123,7 @@ async def test_light_rgbww_without_cold_warm_white_support(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light", ATTR_BRIGHTNESS: 127},
|
{ATTR_ENTITY_ID: "light.test_mylight", ATTR_BRIGHTNESS: 127},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -1146,7 +1146,7 @@ async def test_light_rgbww_without_cold_warm_white_support(
|
|||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{
|
{
|
||||||
ATTR_ENTITY_ID: "light.test_my_light",
|
ATTR_ENTITY_ID: "light.test_mylight",
|
||||||
ATTR_BRIGHTNESS: 127,
|
ATTR_BRIGHTNESS: 127,
|
||||||
ATTR_HS_COLOR: (100, 100),
|
ATTR_HS_COLOR: (100, 100),
|
||||||
},
|
},
|
||||||
@ -1175,7 +1175,7 @@ async def test_light_rgbww_without_cold_warm_white_support(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light", ATTR_RGB_COLOR: (255, 255, 255)},
|
{ATTR_ENTITY_ID: "light.test_mylight", ATTR_RGB_COLOR: (255, 255, 255)},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -1200,7 +1200,7 @@ async def test_light_rgbww_without_cold_warm_white_support(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light", ATTR_RGBW_COLOR: (255, 255, 255, 255)},
|
{ATTR_ENTITY_ID: "light.test_mylight", ATTR_RGBW_COLOR: (255, 255, 255, 255)},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -1226,7 +1226,7 @@ async def test_light_rgbww_without_cold_warm_white_support(
|
|||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{
|
{
|
||||||
ATTR_ENTITY_ID: "light.test_my_light",
|
ATTR_ENTITY_ID: "light.test_mylight",
|
||||||
ATTR_RGBWW_COLOR: (255, 255, 255, 255, 255),
|
ATTR_RGBWW_COLOR: (255, 255, 255, 255, 255),
|
||||||
},
|
},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
@ -1253,7 +1253,7 @@ async def test_light_rgbww_without_cold_warm_white_support(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light", ATTR_COLOR_TEMP_KELVIN: 2500},
|
{ATTR_ENTITY_ID: "light.test_mylight", ATTR_COLOR_TEMP_KELVIN: 2500},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -1312,7 +1312,7 @@ async def test_light_color_temp(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("light.test_my_light")
|
state = hass.states.get("light.test_mylight")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_ON
|
assert state.state == STATE_ON
|
||||||
attributes = state.attributes
|
attributes = state.attributes
|
||||||
@ -1325,7 +1325,7 @@ async def test_light_color_temp(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light"},
|
{ATTR_ENTITY_ID: "light.test_mylight"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -1344,7 +1344,7 @@ async def test_light_color_temp(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_OFF,
|
SERVICE_TURN_OFF,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light"},
|
{ATTR_ENTITY_ID: "light.test_mylight"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls([call(key=1, state=False)])
|
mock_client.light_command.assert_has_calls([call(key=1, state=False)])
|
||||||
@ -1387,7 +1387,7 @@ async def test_light_color_temp_no_mireds_set(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("light.test_my_light")
|
state = hass.states.get("light.test_mylight")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_ON
|
assert state.state == STATE_ON
|
||||||
attributes = state.attributes
|
attributes = state.attributes
|
||||||
@ -1400,7 +1400,7 @@ async def test_light_color_temp_no_mireds_set(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light"},
|
{ATTR_ENTITY_ID: "light.test_mylight"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -1419,7 +1419,7 @@ async def test_light_color_temp_no_mireds_set(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light", ATTR_COLOR_TEMP_KELVIN: 6000},
|
{ATTR_ENTITY_ID: "light.test_mylight", ATTR_COLOR_TEMP_KELVIN: 6000},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -1439,7 +1439,7 @@ async def test_light_color_temp_no_mireds_set(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_OFF,
|
SERVICE_TURN_OFF,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light"},
|
{ATTR_ENTITY_ID: "light.test_mylight"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls([call(key=1, state=False)])
|
mock_client.light_command.assert_has_calls([call(key=1, state=False)])
|
||||||
@ -1489,7 +1489,7 @@ async def test_light_color_temp_legacy(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("light.test_my_light")
|
state = hass.states.get("light.test_mylight")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_ON
|
assert state.state == STATE_ON
|
||||||
attributes = state.attributes
|
attributes = state.attributes
|
||||||
@ -1504,7 +1504,7 @@ async def test_light_color_temp_legacy(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light"},
|
{ATTR_ENTITY_ID: "light.test_mylight"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -1523,7 +1523,7 @@ async def test_light_color_temp_legacy(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_OFF,
|
SERVICE_TURN_OFF,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light"},
|
{ATTR_ENTITY_ID: "light.test_mylight"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls([call(key=1, state=False)])
|
mock_client.light_command.assert_has_calls([call(key=1, state=False)])
|
||||||
@ -1575,7 +1575,7 @@ async def test_light_rgb_legacy(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("light.test_my_light")
|
state = hass.states.get("light.test_mylight")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_ON
|
assert state.state == STATE_ON
|
||||||
attributes = state.attributes
|
attributes = state.attributes
|
||||||
@ -1585,7 +1585,7 @@ async def test_light_rgb_legacy(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light"},
|
{ATTR_ENTITY_ID: "light.test_mylight"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -1601,7 +1601,7 @@ async def test_light_rgb_legacy(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_OFF,
|
SERVICE_TURN_OFF,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light"},
|
{ATTR_ENTITY_ID: "light.test_mylight"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls([call(key=1, state=False)])
|
mock_client.light_command.assert_has_calls([call(key=1, state=False)])
|
||||||
@ -1610,7 +1610,7 @@ async def test_light_rgb_legacy(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light", ATTR_RGB_COLOR: (255, 255, 255)},
|
{ATTR_ENTITY_ID: "light.test_mylight", ATTR_RGB_COLOR: (255, 255, 255)},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
@ -1653,7 +1653,7 @@ async def test_light_effects(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("light.test_my_light")
|
state = hass.states.get("light.test_mylight")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_ON
|
assert state.state == STATE_ON
|
||||||
assert state.attributes[ATTR_EFFECT_LIST] == ["effect1", "effect2"]
|
assert state.attributes[ATTR_EFFECT_LIST] == ["effect1", "effect2"]
|
||||||
@ -1661,7 +1661,7 @@ async def test_light_effects(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LIGHT_DOMAIN,
|
LIGHT_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "light.test_my_light", ATTR_EFFECT: "effect1"},
|
{ATTR_ENTITY_ID: "light.test_mylight", ATTR_EFFECT: "effect1"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.light_command.assert_has_calls(
|
mock_client.light_command.assert_has_calls(
|
||||||
|
@ -40,14 +40,14 @@ async def test_lock_entity_no_open(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("lock.test_my_lock")
|
state = hass.states.get("lock.test_mylock")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_UNLOCKING
|
assert state.state == STATE_UNLOCKING
|
||||||
|
|
||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LOCK_DOMAIN,
|
LOCK_DOMAIN,
|
||||||
SERVICE_LOCK,
|
SERVICE_LOCK,
|
||||||
{ATTR_ENTITY_ID: "lock.test_my_lock"},
|
{ATTR_ENTITY_ID: "lock.test_mylock"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.lock_command.assert_has_calls([call(1, LockCommand.LOCK)])
|
mock_client.lock_command.assert_has_calls([call(1, LockCommand.LOCK)])
|
||||||
@ -74,7 +74,7 @@ async def test_lock_entity_start_locked(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("lock.test_my_lock")
|
state = hass.states.get("lock.test_mylock")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_LOCKED
|
assert state.state == STATE_LOCKED
|
||||||
|
|
||||||
@ -101,14 +101,14 @@ async def test_lock_entity_supports_open(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("lock.test_my_lock")
|
state = hass.states.get("lock.test_mylock")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_LOCKING
|
assert state.state == STATE_LOCKING
|
||||||
|
|
||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LOCK_DOMAIN,
|
LOCK_DOMAIN,
|
||||||
SERVICE_LOCK,
|
SERVICE_LOCK,
|
||||||
{ATTR_ENTITY_ID: "lock.test_my_lock"},
|
{ATTR_ENTITY_ID: "lock.test_mylock"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.lock_command.assert_has_calls([call(1, LockCommand.LOCK)])
|
mock_client.lock_command.assert_has_calls([call(1, LockCommand.LOCK)])
|
||||||
@ -117,7 +117,7 @@ async def test_lock_entity_supports_open(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LOCK_DOMAIN,
|
LOCK_DOMAIN,
|
||||||
SERVICE_UNLOCK,
|
SERVICE_UNLOCK,
|
||||||
{ATTR_ENTITY_ID: "lock.test_my_lock"},
|
{ATTR_ENTITY_ID: "lock.test_mylock"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.lock_command.assert_has_calls([call(1, LockCommand.UNLOCK, None)])
|
mock_client.lock_command.assert_has_calls([call(1, LockCommand.UNLOCK, None)])
|
||||||
@ -126,7 +126,7 @@ async def test_lock_entity_supports_open(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
LOCK_DOMAIN,
|
LOCK_DOMAIN,
|
||||||
SERVICE_OPEN,
|
SERVICE_OPEN,
|
||||||
{ATTR_ENTITY_ID: "lock.test_my_lock"},
|
{ATTR_ENTITY_ID: "lock.test_mylock"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.lock_command.assert_has_calls([call(1, LockCommand.OPEN)])
|
mock_client.lock_command.assert_has_calls([call(1, LockCommand.OPEN)])
|
||||||
|
@ -63,7 +63,7 @@ async def test_media_player_entity(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("media_player.test_my_media_player")
|
state = hass.states.get("media_player.test_mymedia_player")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == "paused"
|
assert state.state == "paused"
|
||||||
|
|
||||||
@ -71,7 +71,7 @@ async def test_media_player_entity(
|
|||||||
MEDIA_PLAYER_DOMAIN,
|
MEDIA_PLAYER_DOMAIN,
|
||||||
SERVICE_VOLUME_MUTE,
|
SERVICE_VOLUME_MUTE,
|
||||||
{
|
{
|
||||||
ATTR_ENTITY_ID: "media_player.test_my_media_player",
|
ATTR_ENTITY_ID: "media_player.test_mymedia_player",
|
||||||
ATTR_MEDIA_VOLUME_MUTED: True,
|
ATTR_MEDIA_VOLUME_MUTED: True,
|
||||||
},
|
},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
@ -85,7 +85,7 @@ async def test_media_player_entity(
|
|||||||
MEDIA_PLAYER_DOMAIN,
|
MEDIA_PLAYER_DOMAIN,
|
||||||
SERVICE_VOLUME_MUTE,
|
SERVICE_VOLUME_MUTE,
|
||||||
{
|
{
|
||||||
ATTR_ENTITY_ID: "media_player.test_my_media_player",
|
ATTR_ENTITY_ID: "media_player.test_mymedia_player",
|
||||||
ATTR_MEDIA_VOLUME_MUTED: True,
|
ATTR_MEDIA_VOLUME_MUTED: True,
|
||||||
},
|
},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
@ -99,7 +99,7 @@ async def test_media_player_entity(
|
|||||||
MEDIA_PLAYER_DOMAIN,
|
MEDIA_PLAYER_DOMAIN,
|
||||||
SERVICE_VOLUME_SET,
|
SERVICE_VOLUME_SET,
|
||||||
{
|
{
|
||||||
ATTR_ENTITY_ID: "media_player.test_my_media_player",
|
ATTR_ENTITY_ID: "media_player.test_mymedia_player",
|
||||||
ATTR_MEDIA_VOLUME_LEVEL: 0.5,
|
ATTR_MEDIA_VOLUME_LEVEL: 0.5,
|
||||||
},
|
},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
@ -111,7 +111,7 @@ async def test_media_player_entity(
|
|||||||
MEDIA_PLAYER_DOMAIN,
|
MEDIA_PLAYER_DOMAIN,
|
||||||
SERVICE_MEDIA_PAUSE,
|
SERVICE_MEDIA_PAUSE,
|
||||||
{
|
{
|
||||||
ATTR_ENTITY_ID: "media_player.test_my_media_player",
|
ATTR_ENTITY_ID: "media_player.test_mymedia_player",
|
||||||
},
|
},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
@ -124,7 +124,7 @@ async def test_media_player_entity(
|
|||||||
MEDIA_PLAYER_DOMAIN,
|
MEDIA_PLAYER_DOMAIN,
|
||||||
SERVICE_MEDIA_PLAY,
|
SERVICE_MEDIA_PLAY,
|
||||||
{
|
{
|
||||||
ATTR_ENTITY_ID: "media_player.test_my_media_player",
|
ATTR_ENTITY_ID: "media_player.test_mymedia_player",
|
||||||
},
|
},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
@ -137,7 +137,7 @@ async def test_media_player_entity(
|
|||||||
MEDIA_PLAYER_DOMAIN,
|
MEDIA_PLAYER_DOMAIN,
|
||||||
SERVICE_MEDIA_STOP,
|
SERVICE_MEDIA_STOP,
|
||||||
{
|
{
|
||||||
ATTR_ENTITY_ID: "media_player.test_my_media_player",
|
ATTR_ENTITY_ID: "media_player.test_mymedia_player",
|
||||||
},
|
},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
@ -206,7 +206,7 @@ async def test_media_player_entity_with_source(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("media_player.test_my_media_player")
|
state = hass.states.get("media_player.test_mymedia_player")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == "playing"
|
assert state.state == "playing"
|
||||||
|
|
||||||
@ -215,7 +215,7 @@ async def test_media_player_entity_with_source(
|
|||||||
MEDIA_PLAYER_DOMAIN,
|
MEDIA_PLAYER_DOMAIN,
|
||||||
SERVICE_PLAY_MEDIA,
|
SERVICE_PLAY_MEDIA,
|
||||||
{
|
{
|
||||||
ATTR_ENTITY_ID: "media_player.test_my_media_player",
|
ATTR_ENTITY_ID: "media_player.test_mymedia_player",
|
||||||
ATTR_MEDIA_CONTENT_TYPE: MediaType.MUSIC,
|
ATTR_MEDIA_CONTENT_TYPE: MediaType.MUSIC,
|
||||||
ATTR_MEDIA_CONTENT_ID: "media-source://local/xz",
|
ATTR_MEDIA_CONTENT_ID: "media-source://local/xz",
|
||||||
},
|
},
|
||||||
@ -228,7 +228,7 @@ async def test_media_player_entity_with_source(
|
|||||||
{
|
{
|
||||||
"id": 1,
|
"id": 1,
|
||||||
"type": "media_player/browse_media",
|
"type": "media_player/browse_media",
|
||||||
"entity_id": "media_player.test_my_media_player",
|
"entity_id": "media_player.test_mymedia_player",
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
response = await client.receive_json()
|
response = await client.receive_json()
|
||||||
@ -238,7 +238,7 @@ async def test_media_player_entity_with_source(
|
|||||||
MEDIA_PLAYER_DOMAIN,
|
MEDIA_PLAYER_DOMAIN,
|
||||||
SERVICE_PLAY_MEDIA,
|
SERVICE_PLAY_MEDIA,
|
||||||
{
|
{
|
||||||
ATTR_ENTITY_ID: "media_player.test_my_media_player",
|
ATTR_ENTITY_ID: "media_player.test_mymedia_player",
|
||||||
ATTR_MEDIA_CONTENT_TYPE: MediaType.URL,
|
ATTR_MEDIA_CONTENT_TYPE: MediaType.URL,
|
||||||
ATTR_MEDIA_CONTENT_ID: "media-source://tts?message=hello",
|
ATTR_MEDIA_CONTENT_ID: "media-source://tts?message=hello",
|
||||||
},
|
},
|
||||||
|
@ -45,14 +45,14 @@ async def test_generic_number_entity(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("number.test_my_number")
|
state = hass.states.get("number.test_mynumber")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == "50"
|
assert state.state == "50"
|
||||||
|
|
||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
NUMBER_DOMAIN,
|
NUMBER_DOMAIN,
|
||||||
SERVICE_SET_VALUE,
|
SERVICE_SET_VALUE,
|
||||||
{ATTR_ENTITY_ID: "number.test_my_number", ATTR_VALUE: 50},
|
{ATTR_ENTITY_ID: "number.test_mynumber", ATTR_VALUE: 50},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.number_command.assert_has_calls([call(1, 50)])
|
mock_client.number_command.assert_has_calls([call(1, 50)])
|
||||||
@ -86,6 +86,6 @@ async def test_generic_number_nan(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("number.test_my_number")
|
state = hass.states.get("number.test_mynumber")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_UNKNOWN
|
assert state.state == STATE_UNKNOWN
|
||||||
|
@ -60,14 +60,14 @@ async def test_select_generic_entity(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("select.test_my_select")
|
state = hass.states.get("select.test_myselect")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == "a"
|
assert state.state == "a"
|
||||||
|
|
||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
SELECT_DOMAIN,
|
SELECT_DOMAIN,
|
||||||
SERVICE_SELECT_OPTION,
|
SERVICE_SELECT_OPTION,
|
||||||
{ATTR_ENTITY_ID: "select.test_my_select", ATTR_OPTION: "b"},
|
{ATTR_ENTITY_ID: "select.test_myselect", ATTR_OPTION: "b"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.select_command.assert_has_calls([call(1, "b")])
|
mock_client.select_command.assert_has_calls([call(1, "b")])
|
||||||
|
@ -41,7 +41,7 @@ async def test_generic_numeric_sensor(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("sensor.test_my_sensor")
|
state = hass.states.get("sensor.test_mysensor")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == "50"
|
assert state.state == "50"
|
||||||
|
|
||||||
@ -70,12 +70,12 @@ async def test_generic_numeric_sensor_with_entity_category_and_icon(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("sensor.test_my_sensor")
|
state = hass.states.get("sensor.test_mysensor")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == "50"
|
assert state.state == "50"
|
||||||
assert state.attributes[ATTR_ICON] == "mdi:leaf"
|
assert state.attributes[ATTR_ICON] == "mdi:leaf"
|
||||||
entity_reg = er.async_get(hass)
|
entity_reg = er.async_get(hass)
|
||||||
entry = entity_reg.async_get("sensor.test_my_sensor")
|
entry = entity_reg.async_get("sensor.test_mysensor")
|
||||||
assert entry is not None
|
assert entry is not None
|
||||||
assert entry.unique_id == "my_sensor"
|
assert entry.unique_id == "my_sensor"
|
||||||
assert entry.entity_category is EntityCategory.CONFIG
|
assert entry.entity_category is EntityCategory.CONFIG
|
||||||
@ -106,12 +106,12 @@ async def test_generic_numeric_sensor_state_class_measurement(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("sensor.test_my_sensor")
|
state = hass.states.get("sensor.test_mysensor")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == "50"
|
assert state.state == "50"
|
||||||
assert state.attributes[ATTR_STATE_CLASS] == SensorStateClass.MEASUREMENT
|
assert state.attributes[ATTR_STATE_CLASS] == SensorStateClass.MEASUREMENT
|
||||||
entity_reg = er.async_get(hass)
|
entity_reg = er.async_get(hass)
|
||||||
entry = entity_reg.async_get("sensor.test_my_sensor")
|
entry = entity_reg.async_get("sensor.test_mysensor")
|
||||||
assert entry is not None
|
assert entry is not None
|
||||||
assert entry.unique_id == "my_sensor"
|
assert entry.unique_id == "my_sensor"
|
||||||
assert entry.entity_category is None
|
assert entry.entity_category is None
|
||||||
@ -140,7 +140,7 @@ async def test_generic_numeric_sensor_device_class_timestamp(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("sensor.test_my_sensor")
|
state = hass.states.get("sensor.test_mysensor")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == "2023-06-22T18:43:52+00:00"
|
assert state.state == "2023-06-22T18:43:52+00:00"
|
||||||
|
|
||||||
@ -169,7 +169,7 @@ async def test_generic_numeric_sensor_legacy_last_reset_convert(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("sensor.test_my_sensor")
|
state = hass.states.get("sensor.test_mysensor")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == "50"
|
assert state.state == "50"
|
||||||
assert state.attributes[ATTR_STATE_CLASS] == SensorStateClass.TOTAL_INCREASING
|
assert state.attributes[ATTR_STATE_CLASS] == SensorStateClass.TOTAL_INCREASING
|
||||||
@ -195,7 +195,7 @@ async def test_generic_numeric_sensor_no_state(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("sensor.test_my_sensor")
|
state = hass.states.get("sensor.test_mysensor")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_UNKNOWN
|
assert state.state == STATE_UNKNOWN
|
||||||
|
|
||||||
@ -220,7 +220,7 @@ async def test_generic_numeric_sensor_nan_state(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("sensor.test_my_sensor")
|
state = hass.states.get("sensor.test_mysensor")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_UNKNOWN
|
assert state.state == STATE_UNKNOWN
|
||||||
|
|
||||||
@ -245,7 +245,7 @@ async def test_generic_numeric_sensor_missing_state(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("sensor.test_my_sensor")
|
state = hass.states.get("sensor.test_mysensor")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_UNKNOWN
|
assert state.state == STATE_UNKNOWN
|
||||||
|
|
||||||
@ -272,6 +272,6 @@ async def test_generic_text_sensor(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("sensor.test_my_sensor")
|
state = hass.states.get("sensor.test_mysensor")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == "i am a teapot"
|
assert state.state == "i am a teapot"
|
||||||
|
@ -34,14 +34,14 @@ async def test_switch_generic_entity(
|
|||||||
user_service=user_service,
|
user_service=user_service,
|
||||||
states=states,
|
states=states,
|
||||||
)
|
)
|
||||||
state = hass.states.get("switch.test_my_switch")
|
state = hass.states.get("switch.test_myswitch")
|
||||||
assert state is not None
|
assert state is not None
|
||||||
assert state.state == STATE_ON
|
assert state.state == STATE_ON
|
||||||
|
|
||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
SWITCH_DOMAIN,
|
SWITCH_DOMAIN,
|
||||||
SERVICE_TURN_ON,
|
SERVICE_TURN_ON,
|
||||||
{ATTR_ENTITY_ID: "switch.test_my_switch"},
|
{ATTR_ENTITY_ID: "switch.test_myswitch"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.switch_command.assert_has_calls([call(1, True)])
|
mock_client.switch_command.assert_has_calls([call(1, True)])
|
||||||
@ -49,7 +49,7 @@ async def test_switch_generic_entity(
|
|||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
SWITCH_DOMAIN,
|
SWITCH_DOMAIN,
|
||||||
SERVICE_TURN_OFF,
|
SERVICE_TURN_OFF,
|
||||||
{ATTR_ENTITY_ID: "switch.test_my_switch"},
|
{ATTR_ENTITY_ID: "switch.test_myswitch"},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
mock_client.switch_command.assert_has_calls([call(1, False)])
|
mock_client.switch_command.assert_has_calls([call(1, False)])
|
||||||
|
Loading…
x
Reference in New Issue
Block a user