From f5ca554fc10764789820b00a16295dd7c7cea18b Mon Sep 17 00:00:00 2001 From: Max Date: Thu, 9 Jan 2025 09:23:28 +0100 Subject: [PATCH 1/2] fix(e2e): send Origin in login request Signed-off-by: Max --- playwright/support/utils/session.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/playwright/support/utils/session.ts b/playwright/support/utils/session.ts index 7038e8c2f..990f91ad8 100644 --- a/playwright/support/utils/session.ts +++ b/playwright/support/utils/session.ts @@ -91,15 +91,20 @@ export async function login( password: string, ) { const tokenResponse = await request.get('./csrftoken') + expect(tokenResponse.status()).toBe(200) const requesttoken = (await tokenResponse.json()).token - await request.post('./login', { + const loginResponse = await request.post('./login', { form: { user, password, requesttoken, }, + headers: { + Origin: tokenResponse.url().replace(/index.php.*/, ''), + }, }) + expect(loginResponse.status()).toBe(200) const response = await request.get('apps/files') expect(response.status()).toBe(200) From df836b5f640c3a1898bca5f47742ca3c076b2dbb Mon Sep 17 00:00:00 2001 From: Max Date: Thu, 9 Jan 2025 09:26:58 +0100 Subject: [PATCH 2/2] test(e2e): drop viewer app We do not make use of it and this saves cloning it. Also rely on the container default of `configureNextcloud`. Signed-off-by: Max --- playwright/support/setup.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/playwright/support/setup.ts b/playwright/support/setup.ts index c85fd2127..04ca0f2ba 100644 --- a/playwright/support/setup.ts +++ b/playwright/support/setup.ts @@ -4,7 +4,7 @@ */ import { test as setup } from '@playwright/test' -import { configureNextcloud, getContainer } from '@nextcloud/cypress/docker' +import { configureNextcloud } from '@nextcloud/cypress/docker' /** * We use this to ensure Nextcloud is configured correctly before running our tests @@ -13,5 +13,5 @@ import { configureNextcloud, getContainer } from '@nextcloud/cypress/docker' * as that only checks for the URL to be accessible which happens already before everything is configured. */ setup('Configure Nextcloud', async () => { - await configureNextcloud(['forms', 'viewer'], undefined, getContainer()) + await configureNextcloud(['forms']) })