From 45e2b565efe0b88edc6e82b2950a43e44cfbaf23 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sun, 11 Aug 2024 13:56:11 +0300 Subject: [PATCH] integration-test: Start writing test for language change --- integration-tests/i18n.spec.ts | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 integration-tests/i18n.spec.ts diff --git a/integration-tests/i18n.spec.ts b/integration-tests/i18n.spec.ts new file mode 100644 index 000000000..28d898d9b --- /dev/null +++ b/integration-tests/i18n.spec.ts @@ -0,0 +1,20 @@ +import test, { expect } from "@playwright/test"; + +test("User can change language from settings", async ({ page }) => { + // Clear all tabs + await page.locator('.note-tab:first-of-type').locator("div").nth(1).click({ button: 'right' }); + await page.getByText('Close all tabs').click(); + + // Go to options + await page.locator('#launcher-pane div').filter({ hasText: 'Options Open New Window' }).getByRole('button').click(); + await page.locator('#launcher-pane').getByText('Options').click(); + + // Check that the default value (English) is set. + await expect(page.locator('#center-pane')).toContainText('Theme'); + const languageCombobox = await page.getByRole('combobox').first(); + expect(languageCombobox).toHaveValue("en"); + + // Select Chinese and ensure the translation is set. + languageCombobox.selectOption("cn"); + await expect(page.locator('#center-pane')).toContainText('主题'); +}); \ No newline at end of file