From d4acfc438a5a2dd9bff4755f53cbc3cc833ecea0 Mon Sep 17 00:00:00 2001 From: Tianyu Liu Date: Thu, 25 Jun 2026 21:28:13 +0200 Subject: [PATCH] FUE-T07: use meter label directly as energy-cost HA device name (drop 'Energy Cost' prefix) --- app/integrations/expose.py | 2 +- tests/test_energy_expose.py | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/app/integrations/expose.py b/app/integrations/expose.py index 2a1423c..d762c44 100644 --- a/app/integrations/expose.py +++ b/app/integrations/expose.py @@ -490,7 +490,7 @@ def _energy_cost_provider(session: Session) -> list[ExposableEntity]: # (Otherwise HA shows them unavailable despite state being published.) device_info = DeviceInfo( identifiers=("energy-cost", active_meter.uuid), - name=f"Energy Cost ({active_meter.label})", + name=active_meter.label, provides_availability=False, ) diff --git a/tests/test_energy_expose.py b/tests/test_energy_expose.py index d495680..7416e34 100644 --- a/tests/test_energy_expose.py +++ b/tests/test_energy_expose.py @@ -869,7 +869,7 @@ def test_energy_entity_discovery_topics_contain_correct_node_id() -> None: # identifiers[1] = meter uuid — this is what FUE-T05 sets. device = DeviceInfo( identifiers=("energy-cost", meter_uuid), - name="Energy Cost (Test Meter)", + name="Test Meter", provides_availability=False, ) entity = ExposableEntity( @@ -2288,8 +2288,8 @@ def test_energy_cost_provider_identifiers_match_meter_uuid(energy_db) -> None: f"expected ('energy-cost', {meter_uuid!r}), " f"got {entity.device.identifiers!r}" ) - assert meter_label in entity.device.name, ( - f"device.name must contain meter label {meter_label!r}, " + assert entity.device.name == meter_label, ( + f"device.name must be exactly the meter label {meter_label!r}, " f"got {entity.device.name!r}" )