From c7f6353111be93107327c6f64474b324cd165d98 Mon Sep 17 00:00:00 2001 From: cristhianzl Date: Wed, 5 Jun 2024 11:38:43 -0300 Subject: [PATCH] =?UTF-8?q?=E2=9C=85=20(playwright.config.ts):=20reduce=20?= =?UTF-8?q?workers=20to=201=20to=20opt=20out=20of=20parallel=20tests=20on?= =?UTF-8?q?=20CI=20=E2=9C=85=20(userSettings.spec.ts):=20add=20end-to-end?= =?UTF-8?q?=20test=20for=20interacting=20with=20API=20Keys?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/frontend/playwright.config.ts | 2 +- .../tests/end-to-end/userSettings.spec.ts | 23 +++++++++++++++++++ 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/src/frontend/playwright.config.ts b/src/frontend/playwright.config.ts index cf7d59472..eeb9497ae 100644 --- a/src/frontend/playwright.config.ts +++ b/src/frontend/playwright.config.ts @@ -21,7 +21,7 @@ export default defineConfig({ /* Retry on CI only */ retries: process.env.CI ? 2 : 0, /* Opt out of parallel tests on CI. */ - workers: 5, + workers: 1, /* Reporter to use. See https://playwright.dev/docs/test-reporters */ timeout: 120 * 1000, // reporter: [ diff --git a/src/frontend/tests/end-to-end/userSettings.spec.ts b/src/frontend/tests/end-to-end/userSettings.spec.ts index af7c93824..e0b0c9d32 100644 --- a/src/frontend/tests/end-to-end/userSettings.spec.ts +++ b/src/frontend/tests/end-to-end/userSettings.spec.ts @@ -89,3 +89,26 @@ test("should see shortcuts", async ({ page }) => { await page.getByText("Undo", { exact: true }).isVisible(); await page.getByText("Redo", { exact: true }).isVisible(); }); + +test("should interact with API Keys", async ({ page }) => { + await page.goto("/"); + await page.waitForTimeout(2000); + await page.getByTestId("user-profile-settings").click(); + await page.getByText("Settings").click(); + await page.getByText("API Keys").click(); + await page.getByText("API Keys", { exact: true }).nth(1).isVisible(); + await page.getByText("Add New").click(); + await page.getByPlaceholder("Insert a name for your API Key").isVisible(); + + const randomName = Math.random().toString(36).substring(2); + + await page + .getByPlaceholder("Insert a name for your API Key") + .fill(randomName); + await page.getByText("Create Secret Key", { exact: true }).click(); + await page.getByText("Please save").isVisible(); + await page.getByTestId("icon-Copy").click(); + await page.waitForTimeout(1000); + await page.getByText("Api Key Copied!").isVisible(); + await page.getByText(randomName).isVisible(); +});