diff --git a/.coveragerc b/.coveragerc index 5fa34f27656..de48567eb6c 100644 --- a/.coveragerc +++ b/.coveragerc @@ -1453,6 +1453,7 @@ omit = homeassistant/components/yale_smart_alarm/binary_sensor.py homeassistant/components/yale_smart_alarm/const.py homeassistant/components/yale_smart_alarm/coordinator.py + homeassistant/components/yale_smart_alarm/diagnostics.py homeassistant/components/yale_smart_alarm/entity.py homeassistant/components/yale_smart_alarm/lock.py homeassistant/components/yamaha_musiccast/__init__.py diff --git a/homeassistant/components/yale_smart_alarm/diagnostics.py b/homeassistant/components/yale_smart_alarm/diagnostics.py new file mode 100644 index 00000000000..896a3240a22 --- /dev/null +++ b/homeassistant/components/yale_smart_alarm/diagnostics.py @@ -0,0 +1,30 @@ +"""Diagnostics support for Yale Smart Alarm.""" +from __future__ import annotations + +from typing import Any + +from homeassistant.components.diagnostics import async_redact_data +from homeassistant.config_entries import ConfigEntry +from homeassistant.core import HomeAssistant + +from .const import COORDINATOR, DOMAIN +from .coordinator import YaleDataUpdateCoordinator + +TO_REDACT = { + "address", + "name", + "mac", + "device_id", + "sensor_map", + "lock_map", +} + + +async def async_get_config_entry_diagnostics( + hass: HomeAssistant, entry: ConfigEntry +) -> dict[str, Any]: + """Return diagnostics for a config entry.""" + coordinator: YaleDataUpdateCoordinator = hass.data[DOMAIN][entry.entry_id][ + COORDINATOR + ] + return async_redact_data(coordinator.data, TO_REDACT)