From 3a70310f7867364919aa0bc43432c21ce5aebd42 Mon Sep 17 00:00:00 2001 From: Drinor Dalipi <45405217+Drinory@users.noreply.github.com> Date: Thu, 21 Aug 2025 09:50:48 +0200 Subject: [PATCH] Follow-up: revert ultimate fallback to undefined in computeEntityEntryName (#26629) --- src/common/entity/compute_entity_name.ts | 2 +- .../common/entity/compute_entity_name.test.ts | 21 +++++++++++++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/src/common/entity/compute_entity_name.ts b/src/common/entity/compute_entity_name.ts index ca57842d8b..be27a6c482 100644 --- a/src/common/entity/compute_entity_name.ts +++ b/src/common/entity/compute_entity_name.ts @@ -31,7 +31,7 @@ export const computeEntityEntryName = ( entry.name || ("original_name" in entry && entry.original_name != null ? String(entry.original_name) - : ""); + : undefined); const device = entry.device_id ? hass.devices[entry.device_id] : undefined; diff --git a/test/common/entity/compute_entity_name.test.ts b/test/common/entity/compute_entity_name.test.ts index 9fa36eeb9c..5d4442a062 100644 --- a/test/common/entity/compute_entity_name.test.ts +++ b/test/common/entity/compute_entity_name.test.ts @@ -159,4 +159,25 @@ describe("computeEntityEntryName", () => { expect(computeEntityEntryName(entry as any, hass as any)).toBe("2"); vi.restoreAllMocks(); }); + + it("returns undefined when entity has device but no name or original_name", () => { + vi.spyOn(computeDeviceNameModule, "computeDeviceName").mockReturnValue( + "Kitchen Device" + ); + + const entry = { + entity_id: "sensor.kitchen_sensor", + // No name property + // No original_name property + device_id: "dev1", + }; + const hass = { + devices: { dev1: {} }, + states: {}, + }; + + // Should return undefined to maintain function contract + expect(computeEntityEntryName(entry as any, hass as any)).toBeUndefined(); + vi.restoreAllMocks(); + }); });