Group optimizer sensors under site device

This commit is contained in:
2026-08-10 11:59:29 +02:00
parent 2085316d1f
commit dc6b2dc71a
12 changed files with 102 additions and 44 deletions
+20 -8
View File
@@ -25,6 +25,15 @@ async def test_optimizer_sensors(hass: HomeAssistant) -> None:
data={CONF_URL: "http://app:8099", CONF_SCAN_INTERVAL: 600},
)
entry.add_to_hass(hass)
device_registry = dr.async_get(hass)
device_registry.async_get_or_create(
config_entry_id=entry.entry_id,
identifiers={(DOMAIN, "4886699_14F28854-E2")},
manufacturer="SolarEdge",
model="Power Optimizer",
name="Optimizer 1.1.1",
serial_number="14F28854-E2",
)
with patch(
"custom_components.solaredge_optimizers.api."
@@ -44,13 +53,16 @@ async def test_optimizer_sensors(hass: HomeAssistant) -> None:
power_entity = next(
entity for entity in entities if entity.unique_id.endswith("_current_power")
)
assert hass.states.get(energy_entity.entity_id).state == "1234.5"
assert hass.states.get(power_entity.entity_id).state == "160.7"
energy_state = hass.states.get(energy_entity.entity_id)
power_state = hass.states.get(power_entity.entity_id)
assert energy_state.state == "1234.5"
assert power_state.state == "160.7"
assert "1.1.1" in energy_state.name
assert "1.1.1" in power_state.name
device_registry = dr.async_get(hass)
devices = dr.async_entries_for_config_entry(device_registry, entry.entry_id)
assert len(devices) == 2
assert {device.serial_number for device in devices} == {
"14F28854-E2",
"14F28855-E2",
}
assert len(devices) == 1
assert devices[0].identifiers == {(DOMAIN, "4886699")}
assert devices[0].name == "SolarEdge Site 4886699"
assert all(entity.device_id == devices[0].id for entity in entities)
assert entry.version == 2