mirror of
https://github.com/home-assistant/core.git
synced 2025-12-22 03:49:36 +00:00
Allow fetching the Cloud ICE servers (#157774)
This commit is contained in:
@@ -22,6 +22,7 @@ from hass_nabucasa.payments_api import PaymentsApiError
|
||||
from hass_nabucasa.remote import CertificateStatus
|
||||
import pytest
|
||||
from syrupy.assertion import SnapshotAssertion
|
||||
from webrtc_models import RTCIceServer
|
||||
|
||||
from homeassistant.components import system_health
|
||||
from homeassistant.components.alexa import errors as alexa_errors
|
||||
@@ -2186,3 +2187,39 @@ async def test_download_support_package_integration_load_error(
|
||||
req = await cloud_client.get("/api/cloud/support_package")
|
||||
assert req.status == HTTPStatus.OK
|
||||
assert await req.text() == snapshot
|
||||
|
||||
|
||||
async def test_websocket_ice_servers(
|
||||
hass: HomeAssistant,
|
||||
hass_ws_client: WebSocketGenerator,
|
||||
cloud: MagicMock,
|
||||
setup_cloud: None,
|
||||
) -> None:
|
||||
"""Test getting ICE servers."""
|
||||
cloud.client._ice_servers = [
|
||||
RTCIceServer(urls="stun:stun.l.bla.com:19302"),
|
||||
RTCIceServer(
|
||||
urls="turn:turn.example.com:3478", username="user", credential="pass"
|
||||
),
|
||||
]
|
||||
client = await hass_ws_client(hass)
|
||||
|
||||
await client.send_json_auto_id({"type": "cloud/webrtc/ice_servers"})
|
||||
response = await client.receive_json()
|
||||
|
||||
assert response["success"]
|
||||
assert response["result"] == [
|
||||
{"urls": "stun:stun.l.bla.com:19302"},
|
||||
{
|
||||
"urls": "turn:turn.example.com:3478",
|
||||
"username": "user",
|
||||
"credential": "pass",
|
||||
},
|
||||
]
|
||||
|
||||
cloud.id_token = None
|
||||
|
||||
await client.send_json_auto_id({"type": "cloud/webrtc/ice_servers"})
|
||||
response = await client.receive_json()
|
||||
assert not response["success"]
|
||||
assert response["error"]["code"] == "not_logged_in"
|
||||
|
||||
Reference in New Issue
Block a user