From d2234b11c420bbbc9124315edaa34eb3acddde28 Mon Sep 17 00:00:00 2001 From: 4gray Date: Sat, 5 Sep 2026 22:24:11 +0200 Subject: [PATCH] test(migration): cover legacy recovery IPC contracts --- .../src/app/api/main.preload.spec-data.ts | 6 ++++++ .../events/database/worker-ipc-contract.spec-data.ts | 5 +++++ .../app/events/database/worker-ipc-contract.spec.ts | 11 ++++++++++- 3 files changed, 21 insertions(+), 1 deletion(-) diff --git a/apps/electron-backend/src/app/api/main.preload.spec-data.ts b/apps/electron-backend/src/app/api/main.preload.spec-data.ts index ed836139b..1f2db2db2 100644 --- a/apps/electron-backend/src/app/api/main.preload.spec-data.ts +++ b/apps/electron-backend/src/app/api/main.preload.spec-data.ts @@ -82,6 +82,12 @@ export const dbPreloadCases: PreloadInvokeCase[] = [ channel: 'DB_UPSERT_APP_PLAYLIST', forwardedArgs: [playlist], }, + { + method: 'dbRecoverLegacyPlaylists', + args: [], + channel: 'DB_RECOVER_LEGACY_PLAYLISTS', + forwardedArgs: [], + }, { method: 'dbMigrateAppPlaylists', args: [playlists], diff --git a/apps/electron-backend/src/app/events/database/worker-ipc-contract.spec-data.ts b/apps/electron-backend/src/app/events/database/worker-ipc-contract.spec-data.ts index 00ae5f697..49a51080e 100644 --- a/apps/electron-backend/src/app/events/database/worker-ipc-contract.spec-data.ts +++ b/apps/electron-backend/src/app/events/database/worker-ipc-contract.spec-data.ts @@ -73,6 +73,11 @@ export const workerIpcContractCases: WorkerIpcContractCase[] = [ args: [playlist], payload: playlist, }, + { + operation: 'DB_MIGRATE_APP_PLAYLISTS', + args: [playlists], + payload: { playlists }, + }, { operation: 'DB_UPSERT_APP_PLAYLISTS', args: [playlists], diff --git a/apps/electron-backend/src/app/events/database/worker-ipc-contract.spec.ts b/apps/electron-backend/src/app/events/database/worker-ipc-contract.spec.ts index 0729cd338..4998d870b 100644 --- a/apps/electron-backend/src/app/events/database/worker-ipc-contract.spec.ts +++ b/apps/electron-backend/src/app/events/database/worker-ipc-contract.spec.ts @@ -92,11 +92,20 @@ describe('database worker IPC contract', () => { it('registers an IPC handler for every worker operation', () => { const registeredDbChannels = [...mockRegisteredHandlers.keys()] - .filter((channel) => channel !== 'DB_CANCEL_OPERATION') + .filter( + (channel) => + ![ + 'DB_CANCEL_OPERATION', + 'DB_RECOVER_LEGACY_PLAYLISTS', + ].includes(channel) + ) .sort(); expect(registeredDbChannels).toEqual([...DB_WORKER_OPERATIONS].sort()); expect(mockRegisteredHandlers.has('DB_CANCEL_OPERATION')).toBe(true); + expect(mockRegisteredHandlers.has('DB_RECOVER_LEGACY_PLAYLISTS')).toBe( + true + ); }); it.each(workerIpcContractCases)(