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,