From 0e49a6f3e1b95568e40e458265c040bddee76506 Mon Sep 17 00:00:00 2001 From: 4gray Date: Fri, 17 Jul 2026 07:35:52 +0200 Subject: [PATCH] test(settings): harden shared controls normalization coverage --- .../src/lib/settings-store.service.spec.ts | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/libs/services/src/lib/settings-store.service.spec.ts b/libs/services/src/lib/settings-store.service.spec.ts index c37daa0d8..13d6d2dc2 100644 --- a/libs/services/src/lib/settings-store.service.spec.ts +++ b/libs/services/src/lib/settings-store.service.spec.ts @@ -92,6 +92,7 @@ describe('SettingsStore dashboard rail settings', () => { await store.loadSettings(); + expect(store.webPlayerSharedControls?.()).toBe(false); expect(store.getSettings().webPlayerSharedControls).toBe(false); }); @@ -110,6 +111,21 @@ describe('SettingsStore dashboard rail settings', () => { ); }); + it('serializes a malformed string "true" shared web controls update as false', async () => { + const store = injector.get(SettingsStore); + + await store.updateSettings({ + webPlayerSharedControls: 'true' as unknown as boolean, + }); + + expect(storage.set).toHaveBeenCalledWith( + STORE_KEY.Settings, + expect.objectContaining({ + webPlayerSharedControls: false, + }) + ); + }); + it('deep-merges partial stored dashboard rail settings with enabled defaults', async () => { storedSettings = { player: VideoPlayer.VideoJs,