From c57381076280a083ebffdae4bc2cc8d64a58fa71 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20=27rysiek=27=20Wo=C5=BAniak?= Date: Wed, 13 Mar 2024 03:35:19 +0000 Subject: [PATCH] additional test for activate event handling --- __tests__/service-worker/service-worker.test.js | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/__tests__/service-worker/service-worker.test.js b/__tests__/service-worker/service-worker.test.js index 43c9601..9aa522a 100644 --- a/__tests__/service-worker/service-worker.test.js +++ b/__tests__/service-worker/service-worker.test.js @@ -232,9 +232,9 @@ beforeAll(async ()=>{ postMessage: window.clients.prototypePostMessage } }, - claim: async () => { + claim: spy(async () => { return undefined - }, + }), // the actual spy function must be possible to reference // but we want spy data per test, so we set it properly in beforeEach() prototypePostMessage: null @@ -443,6 +443,14 @@ describe('service-worker', async () => { window.test_id = 0 + it("should call clients.claim() when activated", async () => { + await import("../../service-worker.js?" + window.test_id); + await self.dispatchEvent(new Event('install')) + await self.waitForSWInstall() + await self.dispatchEvent(new Event('activate')) + assertSpyCalls(window.clients.claim, 1) + }) + it("should use default LibResilientConfig values when config.json is missing", async () => { let mock_response_data = {