"""Test deCONZ diagnostics.""" from pydeconz.websocket import State from homeassistant.components.deconz.const import CONF_MASTER_GATEWAY from homeassistant.components.diagnostics import REDACTED from homeassistant.const import CONF_API_KEY, CONF_HOST, CONF_PORT, Platform from homeassistant.core import HomeAssistant from .test_gateway import HOST, PORT, setup_deconz_integration from tests.components.diagnostics import get_diagnostics_for_config_entry from tests.test_util.aiohttp import AiohttpClientMocker from tests.typing import ClientSessionGenerator async def test_entry_diagnostics( hass: HomeAssistant, hass_client: ClientSessionGenerator, aioclient_mock: AiohttpClientMocker, mock_deconz_websocket, ) -> None: """Test config entry diagnostics.""" config_entry = await setup_deconz_integration(hass, aioclient_mock) await mock_deconz_websocket(state=State.RUNNING) await hass.async_block_till_done() assert await get_diagnostics_for_config_entry(hass, hass_client, config_entry) == { "config": { "data": {CONF_API_KEY: REDACTED, CONF_HOST: HOST, CONF_PORT: PORT}, "disabled_by": None, "domain": "deconz", "entry_id": "1", "options": {CONF_MASTER_GATEWAY: True}, "pref_disable_new_entities": False, "pref_disable_polling": False, "source": "user", "title": "Mock Title", "unique_id": REDACTED, "version": 1, }, "deconz_config": { "bridgeid": REDACTED, "ipaddress": HOST, "mac": REDACTED, "modelid": "deCONZ", "name": "deCONZ mock gateway", "sw_version": "2.05.69", "uuid": "1234", "websocketport": 1234, }, "websocket_state": State.RUNNING.value, "deconz_ids": {}, "entities": { str(Platform.ALARM_CONTROL_PANEL): [], str(Platform.BINARY_SENSOR): [], str(Platform.BUTTON): [], str(Platform.CLIMATE): [], str(Platform.COVER): [], str(Platform.FAN): [], str(Platform.LIGHT): [], str(Platform.LOCK): [], str(Platform.NUMBER): [], str(Platform.SCENE): [], str(Platform.SELECT): [], str(Platform.SENSOR): [], str(Platform.SIREN): [], str(Platform.SWITCH): [], }, "events": {}, "alarm_systems": {}, "groups": {}, "lights": {}, "scenes": {}, "sensors": {}, }