Add floor support to areas WebSocket API (#113402)

This commit is contained in:
Franck Nijhof 2024-03-14 12:55:31 +01:00 committed by GitHub
parent a6594f8860
commit 064f96f8fa
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 13 additions and 0 deletions

View File

@ -40,6 +40,7 @@ def websocket_list_areas(
{
vol.Required("type"): "config/area_registry/create",
vol.Optional("aliases"): list,
vol.Optional("floor_id"): str,
vol.Optional("icon"): str,
vol.Required("name"): str,
vol.Optional("picture"): vol.Any(str, None),
@ -100,6 +101,7 @@ def websocket_delete_area(
vol.Required("type"): "config/area_registry/update",
vol.Optional("aliases"): list,
vol.Required("area_id"): str,
vol.Optional("floor_id"): vol.Any(str, None),
vol.Optional("icon"): vol.Any(str, None),
vol.Optional("name"): str,
vol.Optional("picture"): vol.Any(str, None),
@ -137,6 +139,7 @@ def _entry_dict(entry: AreaEntry) -> dict[str, Any]:
return {
"aliases": list(entry.aliases),
"area_id": entry.id,
"floor_id": entry.floor_id,
"icon": entry.icon,
"name": entry.name,
"picture": entry.picture,

View File

@ -30,6 +30,7 @@ async def test_list_areas(
aliases={"alias_1", "alias_2"},
icon="mdi:garage",
picture="/image/example.png",
floor_id="first_floor",
)
await client.send_json_auto_id({"type": "config/area_registry/list"})
@ -39,6 +40,7 @@ async def test_list_areas(
{
"aliases": [],
"area_id": area1.id,
"floor_id": None,
"icon": None,
"name": "mock 1",
"picture": None,
@ -46,6 +48,7 @@ async def test_list_areas(
{
"aliases": unordered(["alias_1", "alias_2"]),
"area_id": area2.id,
"floor_id": "first_floor",
"icon": "mdi:garage",
"name": "mock 2",
"picture": "/image/example.png",
@ -67,6 +70,7 @@ async def test_create_area(
assert msg["result"] == {
"aliases": [],
"area_id": ANY,
"floor_id": None,
"icon": None,
"name": "mock",
"picture": None,
@ -77,6 +81,7 @@ async def test_create_area(
await client.send_json_auto_id(
{
"aliases": ["alias_1", "alias_2"],
"floor_id": "first_floor",
"icon": "mdi:garage",
"name": "mock 2",
"picture": "/image/example.png",
@ -89,6 +94,7 @@ async def test_create_area(
assert msg["result"] == {
"aliases": unordered(["alias_1", "alias_2"]),
"area_id": ANY,
"floor_id": "first_floor",
"icon": "mdi:garage",
"name": "mock 2",
"picture": "/image/example.png",
@ -158,6 +164,7 @@ async def test_update_area(
{
"aliases": ["alias_1", "alias_2"],
"area_id": area.id,
"floor_id": "first_floor",
"icon": "mdi:garage",
"name": "mock 2",
"picture": "/image/example.png",
@ -170,6 +177,7 @@ async def test_update_area(
assert msg["result"] == {
"aliases": unordered(["alias_1", "alias_2"]),
"area_id": area.id,
"floor_id": "first_floor",
"icon": "mdi:garage",
"name": "mock 2",
"picture": "/image/example.png",
@ -180,6 +188,7 @@ async def test_update_area(
{
"aliases": ["alias_1", "alias_1"],
"area_id": area.id,
"floor_id": None,
"icon": None,
"picture": None,
"type": "config/area_registry/update",
@ -191,6 +200,7 @@ async def test_update_area(
assert msg["result"] == {
"aliases": ["alias_1"],
"area_id": area.id,
"floor_id": None,
"icon": None,
"name": "mock 2",
"picture": None,