61 lines
1.7 KiB
Python
61 lines
1.7 KiB
Python
|
"""Test entity_registry API."""
|
||
|
import pytest
|
||
|
|
||
|
from homeassistant.components.config import device_registry
|
||
|
from tests.common import mock_device_registry
|
||
|
|
||
|
|
||
|
@pytest.fixture
|
||
|
def client(hass, hass_ws_client):
|
||
|
"""Fixture that can interact with the config manager API."""
|
||
|
hass.loop.run_until_complete(device_registry.async_setup(hass))
|
||
|
yield hass.loop.run_until_complete(hass_ws_client(hass))
|
||
|
|
||
|
|
||
|
@pytest.fixture
|
||
|
def registry(hass):
|
||
|
"""Return an empty, loaded, registry."""
|
||
|
return mock_device_registry(hass)
|
||
|
|
||
|
|
||
|
async def test_list_devices(hass, client, registry):
|
||
|
"""Test list entries."""
|
||
|
registry.async_get_or_create(
|
||
|
config_entry='1234',
|
||
|
connections={('ethernet', '12:34:56:78:90:AB:CD:EF')},
|
||
|
identifiers={('bridgeid', '0123')},
|
||
|
manufacturer='manufacturer', model='model')
|
||
|
registry.async_get_or_create(
|
||
|
config_entry='1234',
|
||
|
connections={},
|
||
|
identifiers={('bridgeid', '1234')},
|
||
|
manufacturer='manufacturer', model='model')
|
||
|
|
||
|
await client.send_json({
|
||
|
'id': 5,
|
||
|
'type': 'config/device_registry/list',
|
||
|
})
|
||
|
msg = await client.receive_json()
|
||
|
|
||
|
for entry in msg['result']:
|
||
|
entry.pop('id')
|
||
|
|
||
|
assert msg['result'] == [
|
||
|
{
|
||
|
'config_entries': ['1234'],
|
||
|
'connections': [['ethernet', '12:34:56:78:90:AB:CD:EF']],
|
||
|
'manufacturer': 'manufacturer',
|
||
|
'model': 'model',
|
||
|
'name': None,
|
||
|
'sw_version': None
|
||
|
},
|
||
|
{
|
||
|
'config_entries': ['1234'],
|
||
|
'connections': [],
|
||
|
'manufacturer': 'manufacturer',
|
||
|
'model': 'model',
|
||
|
'name': None,
|
||
|
'sw_version': None
|
||
|
}
|
||
|
]
|