mirror of
https://github.com/home-assistant/core.git
synced 2025-04-23 00:37:53 +00:00
Ensure event entities are allowed for linked homekit config via YAML (#123994)
This commit is contained in:
parent
e8d57bf636
commit
c8b0c939e4
@ -22,6 +22,7 @@ from homeassistant.components import (
|
||||
sensor,
|
||||
)
|
||||
from homeassistant.components.camera import DOMAIN as CAMERA_DOMAIN
|
||||
from homeassistant.components.event import DOMAIN as EVENT_DOMAIN
|
||||
from homeassistant.components.lock import DOMAIN as LOCK_DOMAIN
|
||||
from homeassistant.components.media_player import (
|
||||
DOMAIN as MEDIA_PLAYER_DOMAIN,
|
||||
@ -167,9 +168,11 @@ CAMERA_SCHEMA = BASIC_INFO_SCHEMA.extend(
|
||||
vol.Optional(
|
||||
CONF_VIDEO_PACKET_SIZE, default=DEFAULT_VIDEO_PACKET_SIZE
|
||||
): cv.positive_int,
|
||||
vol.Optional(CONF_LINKED_MOTION_SENSOR): cv.entity_domain(binary_sensor.DOMAIN),
|
||||
vol.Optional(CONF_LINKED_MOTION_SENSOR): cv.entity_domain(
|
||||
[binary_sensor.DOMAIN, EVENT_DOMAIN]
|
||||
),
|
||||
vol.Optional(CONF_LINKED_DOORBELL_SENSOR): cv.entity_domain(
|
||||
binary_sensor.DOMAIN
|
||||
[binary_sensor.DOMAIN, EVENT_DOMAIN]
|
||||
),
|
||||
}
|
||||
)
|
||||
|
@ -7,13 +7,38 @@ import voluptuous as vol
|
||||
|
||||
from homeassistant.components.homekit.const import (
|
||||
BRIDGE_NAME,
|
||||
CONF_AUDIO_CODEC,
|
||||
CONF_AUDIO_MAP,
|
||||
CONF_AUDIO_PACKET_SIZE,
|
||||
CONF_FEATURE,
|
||||
CONF_FEATURE_LIST,
|
||||
CONF_LINKED_BATTERY_SENSOR,
|
||||
CONF_LINKED_DOORBELL_SENSOR,
|
||||
CONF_LINKED_MOTION_SENSOR,
|
||||
CONF_LOW_BATTERY_THRESHOLD,
|
||||
CONF_MAX_FPS,
|
||||
CONF_MAX_HEIGHT,
|
||||
CONF_MAX_WIDTH,
|
||||
CONF_STREAM_COUNT,
|
||||
CONF_SUPPORT_AUDIO,
|
||||
CONF_THRESHOLD_CO,
|
||||
CONF_THRESHOLD_CO2,
|
||||
CONF_VIDEO_CODEC,
|
||||
CONF_VIDEO_MAP,
|
||||
CONF_VIDEO_PACKET_SIZE,
|
||||
DEFAULT_AUDIO_CODEC,
|
||||
DEFAULT_AUDIO_MAP,
|
||||
DEFAULT_AUDIO_PACKET_SIZE,
|
||||
DEFAULT_CONFIG_FLOW_PORT,
|
||||
DEFAULT_LOW_BATTERY_THRESHOLD,
|
||||
DEFAULT_MAX_FPS,
|
||||
DEFAULT_MAX_HEIGHT,
|
||||
DEFAULT_MAX_WIDTH,
|
||||
DEFAULT_STREAM_COUNT,
|
||||
DEFAULT_SUPPORT_AUDIO,
|
||||
DEFAULT_VIDEO_CODEC,
|
||||
DEFAULT_VIDEO_MAP,
|
||||
DEFAULT_VIDEO_PACKET_SIZE,
|
||||
DOMAIN,
|
||||
FEATURE_ON_OFF,
|
||||
FEATURE_PLAY_PAUSE,
|
||||
@ -178,6 +203,31 @@ def test_validate_entity_config() -> None:
|
||||
assert vec({"sensor.co2": {CONF_THRESHOLD_CO2: 500}}) == {
|
||||
"sensor.co2": {CONF_THRESHOLD_CO2: 500, CONF_LOW_BATTERY_THRESHOLD: 20}
|
||||
}
|
||||
assert vec(
|
||||
{
|
||||
"camera.demo": {
|
||||
CONF_LINKED_DOORBELL_SENSOR: "event.doorbell",
|
||||
CONF_LINKED_MOTION_SENSOR: "event.motion",
|
||||
}
|
||||
}
|
||||
) == {
|
||||
"camera.demo": {
|
||||
CONF_LINKED_DOORBELL_SENSOR: "event.doorbell",
|
||||
CONF_LINKED_MOTION_SENSOR: "event.motion",
|
||||
CONF_AUDIO_CODEC: DEFAULT_AUDIO_CODEC,
|
||||
CONF_SUPPORT_AUDIO: DEFAULT_SUPPORT_AUDIO,
|
||||
CONF_MAX_WIDTH: DEFAULT_MAX_WIDTH,
|
||||
CONF_MAX_HEIGHT: DEFAULT_MAX_HEIGHT,
|
||||
CONF_MAX_FPS: DEFAULT_MAX_FPS,
|
||||
CONF_AUDIO_MAP: DEFAULT_AUDIO_MAP,
|
||||
CONF_VIDEO_MAP: DEFAULT_VIDEO_MAP,
|
||||
CONF_STREAM_COUNT: DEFAULT_STREAM_COUNT,
|
||||
CONF_VIDEO_CODEC: DEFAULT_VIDEO_CODEC,
|
||||
CONF_AUDIO_PACKET_SIZE: DEFAULT_AUDIO_PACKET_SIZE,
|
||||
CONF_VIDEO_PACKET_SIZE: DEFAULT_VIDEO_PACKET_SIZE,
|
||||
CONF_LOW_BATTERY_THRESHOLD: DEFAULT_LOW_BATTERY_THRESHOLD,
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
def test_validate_media_player_features() -> None:
|
||||
|
Loading…
x
Reference in New Issue
Block a user