diff --git a/.coveragerc b/.coveragerc index 0ada739763f..a4819a124c9 100644 --- a/.coveragerc +++ b/.coveragerc @@ -90,6 +90,7 @@ omit = homeassistant/components/aurora/binary_sensor.py homeassistant/components/aurora/const.py homeassistant/components/aurora/sensor.py + homeassistant/components/aussie_broadband/diagnostics.py homeassistant/components/avea/light.py homeassistant/components/avion/light.py homeassistant/components/azure_devops/__init__.py diff --git a/homeassistant/components/aussie_broadband/diagnostics.py b/homeassistant/components/aussie_broadband/diagnostics.py new file mode 100644 index 00000000000..f4e95a99f56 --- /dev/null +++ b/homeassistant/components/aussie_broadband/diagnostics.py @@ -0,0 +1,28 @@ +"""Provides diagnostics for Aussie Broadband.""" +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 DOMAIN + +TO_REDACT = ["address", "ipAddresses", "description", "discounts", "coordinator"] + + +async def async_get_config_entry_diagnostics( + hass: HomeAssistant, config_entry: ConfigEntry +) -> dict[str, Any]: + """Return diagnostics for a config entry.""" + services = [] + for service in hass.data[DOMAIN][config_entry.entry_id]["services"]: + services.append( + { + "service": async_redact_data(service, TO_REDACT), + "usage": async_redact_data(service["coordinator"].data, ["historical"]), + } + ) + + return {"services": services}