From 94e99784f3588465a703957d2fc4f405ff6dbe69 Mon Sep 17 00:00:00 2001 From: rvveber Date: Tue, 13 May 2025 12:51:09 +0200 Subject: [PATCH] =?UTF-8?q?=E2=9C=85(tests)=20Add=20&=20adapt=20language?= =?UTF-8?q?=20tests?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Language will only be changed if different from current language - Added test for custom translations Signed-off-by: Robin Weber --- .../e2e/__tests__/app-impress/config.spec.ts | 20 +++++++++++++++++++ .../__tests__/app-impress/language.spec.ts | 10 +++++++++- 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/src/frontend/apps/e2e/__tests__/app-impress/config.spec.ts b/src/frontend/apps/e2e/__tests__/app-impress/config.spec.ts index 21bb085e..7dd93873 100644 --- a/src/frontend/apps/e2e/__tests__/app-impress/config.spec.ts +++ b/src/frontend/apps/e2e/__tests__/app-impress/config.spec.ts @@ -119,6 +119,26 @@ test.describe('Config', () => { .first(), ).toBeAttached(); }); + + test('it checks theme_customization.translations config', async ({ + page, + }) => { + await overrideConfig(page, { + theme_customization: { + translations: { + en: { + translation: { + Docs: 'MyCustomDocs', + }, + }, + }, + }, + }); + + await page.goto('/'); + + await expect(page.getByText('MyCustomDocs')).toBeAttached(); + }); }); test.describe('Config: Not loggued', () => { diff --git a/src/frontend/apps/e2e/__tests__/app-impress/language.spec.ts b/src/frontend/apps/e2e/__tests__/app-impress/language.spec.ts index 5805d010..04802083 100644 --- a/src/frontend/apps/e2e/__tests__/app-impress/language.spec.ts +++ b/src/frontend/apps/e2e/__tests__/app-impress/language.spec.ts @@ -128,8 +128,16 @@ export async function waitForLanguageSwitch( lang: TestLanguageValue, ) { const header = page.locator('header').first(); - await header.getByRole('button', { name: 'arrow_drop_down' }).click(); + const languagePicker = header.locator('.--docs--language-picker-text'); + const isAlreadyTargetLanguage = await languagePicker + .innerText() + .then((text) => text.toLowerCase().includes(lang.label.toLowerCase())); + if (isAlreadyTargetLanguage) { + return; + } + + await languagePicker.click(); const responsePromise = page.waitForResponse( (resp) => resp.url().includes('/user') && resp.request().method() === 'PATCH',