From a899d410e283a18d03efcad526b7cb4e1d46962f Mon Sep 17 00:00:00 2001 From: Guilherme Gazzo Date: Tue, 2 Apr 2024 19:10:15 -0300 Subject: [PATCH] test: allow csp for livechat tests (#32116) --- apps/meteor/app/cors/server/cors.ts | 2 + .../rocketchat-livechat/assets/demo.html | 80 +++++++++---------- .../omnichannel-livechat-api.spec.ts | 11 +-- .../omnichannel-livechat-widget.spec.ts | 6 +- 4 files changed, 43 insertions(+), 56 deletions(-) diff --git a/apps/meteor/app/cors/server/cors.ts b/apps/meteor/app/cors/server/cors.ts index 7857ec89bec..b4936d1456b 100644 --- a/apps/meteor/app/cors/server/cors.ts +++ b/apps/meteor/app/cors/server/cors.ts @@ -60,6 +60,8 @@ WebApp.rawConnectHandlers.use(async (_req: http.IncomingMessage, res: http.Serve const inlineHashes = [ // Hash for `window.close()`, required by the CAS login popup. "'sha256-jqxtvDkBbRAl9Hpqv68WdNOieepg8tJSYu1xIy7zT34='", + // Hash for /apps/meteor/packages/rocketchat-livechat/assets/demo.html:25 + "'sha256-aui5xYk3Lu1dQcnsPlNZI+qDTdfzdUv3fzsw80VLJgw='", ] .filter(Boolean) .join(' '); diff --git a/apps/meteor/packages/rocketchat-livechat/assets/demo.html b/apps/meteor/packages/rocketchat-livechat/assets/demo.html index ee5fd6944d4..f1b0ddedeeb 100644 --- a/apps/meteor/packages/rocketchat-livechat/assets/demo.html +++ b/apps/meteor/packages/rocketchat-livechat/assets/demo.html @@ -1,45 +1,39 @@ - - - - - - - - -

test

-

Talk to us.

- - - - -

changing page title

- page 0
- page 1
- page 2
- page 3
- -

without changing page title

- page 4
- page 5
- page 6
- page 7
- - - - + + + + + + + +

test

+

Talk to us.

+ +

changing page title

+ page 0
+ page 1
+ page 2
+ page 3
+ +

without changing page title

+ page 4
+ page 5
+ page 6
+ page 7
+ + + diff --git a/apps/meteor/tests/e2e/omnichannel/omnichannel-livechat-api.spec.ts b/apps/meteor/tests/e2e/omnichannel/omnichannel-livechat-api.spec.ts index 88a89940279..b34910ddf3d 100644 --- a/apps/meteor/tests/e2e/omnichannel/omnichannel-livechat-api.spec.ts +++ b/apps/meteor/tests/e2e/omnichannel/omnichannel-livechat-api.spec.ts @@ -70,7 +70,6 @@ test.describe('OC - Livechat API', () => { agent = await createAgent(api, 'user1'); page = await browser.newPage(); - await expect((await api.post('/settings/Enable_CSP', { value: false })).status()).toBe(200); poLiveChat = new OmnichannelLiveChatEmbedded(page); @@ -80,8 +79,7 @@ test.describe('OC - Livechat API', () => { await page.goto('/packages/rocketchat_livechat/assets/demo.html'); }); - test.afterAll(async ({ api }) => { - await expect((await api.post('/settings/Enable_CSP', { value: true })).status()).toBe(200); + test.afterAll(async () => { await agent.delete(); await poAuxContext.page.close(); await page.close(); @@ -231,8 +229,6 @@ test.describe('OC - Livechat API', () => { await addAgentToDepartment(api, { department: departmentA, agentId: agent.data._id }); await addAgentToDepartment(api, { department: departmentB, agentId: agent2.data._id }); - - await expect((await api.post('/settings/Enable_CSP', { value: false })).status()).toBe(200); await expect((await api.post('/settings/Livechat_offline_email', { value: 'test@testing.com' })).status()).toBe(200); }); @@ -267,7 +263,6 @@ test.describe('OC - Livechat API', () => { }); test.afterAll(async ({ api }) => { - await expect((await api.post('/settings/Enable_CSP', { value: true })).status()).toBe(200); await agent.delete(); await agent2.delete(); @@ -623,7 +618,6 @@ test.describe('OC - Livechat API', () => { test.beforeAll(async ({ api }) => { agent = await createAgent(api, 'user1'); - await expect((await api.post('/settings/Enable_CSP', { value: false })).status()).toBe(200); await expect((await api.post('/settings/Livechat_offline_email', { value: 'test@testing.com' })).status()).toBe(200); }); @@ -650,8 +644,7 @@ test.describe('OC - Livechat API', () => { await page.close(); }); - test.afterAll(async ({ api }) => { - await expect((await api.post('/settings/Enable_CSP', { value: true })).status()).toBe(200); + test.afterAll(async () => { await agent.delete(); }); diff --git a/apps/meteor/tests/e2e/omnichannel/omnichannel-livechat-widget.spec.ts b/apps/meteor/tests/e2e/omnichannel/omnichannel-livechat-widget.spec.ts index 37279923dbd..5b57920bb7a 100644 --- a/apps/meteor/tests/e2e/omnichannel/omnichannel-livechat-widget.spec.ts +++ b/apps/meteor/tests/e2e/omnichannel/omnichannel-livechat-widget.spec.ts @@ -8,16 +8,14 @@ test.describe('Omnichannel - Livechat Widget Embedded', () => { let page: Page; let poLiveChat: OmnichannelLiveChatEmbedded; - test.beforeAll(async ({ browser, api }) => { + test.beforeAll(async ({ browser }) => { page = await browser.newPage(); poLiveChat = new OmnichannelLiveChatEmbedded(page); - await expect((await api.post('/settings/Enable_CSP', { value: false })).status()).toBe(200); await page.goto('/packages/rocketchat_livechat/assets/demo.html'); }); - test.afterAll(async ({ api }) => { - await expect((await api.post('/settings/Enable_CSP', { value: true })).status()).toBe(200); + test.afterAll(async () => { await page.close(); });