From a10e9057461599ae834d77dd76b1085bfe78c354 Mon Sep 17 00:00:00 2001 From: Darshan Date: Fri, 24 Oct 2025 20:02:00 +0530 Subject: [PATCH] fix: e2e. --- e2e/steps/free-project.ts | 16 ++++++++++++++-- e2e/steps/pro-project.ts | 15 +++++++++++++-- 2 files changed, 27 insertions(+), 4 deletions(-) diff --git a/e2e/steps/free-project.ts b/e2e/steps/free-project.ts index a8a3dadb9..cf0972e47 100644 --- a/e2e/steps/free-project.ts +++ b/e2e/steps/free-project.ts @@ -17,10 +17,22 @@ export async function createFreeProject(page: Page): Promise { await page.waitForURL(/\/organization-[^/]+/); await page.getByRole('button', { name: 'create project' }).first().click(); const dialog = page.locator('dialog[open]'); + await dialog.getByPlaceholder('Project name').fill('test project'); + + let region = 'fra'; // for fallback + const regionPicker = dialog.locator('button[role="combobox"]'); + if (await regionPicker.isVisible()) { + await regionPicker.click(); + await page.getByRole('option', { name: /New York/i }).click(); + + region = 'nyc'; + } + await dialog.getByRole('button', { name: 'create' }).click(); - await page.waitForURL(/\/project-fra-[^/]+/); - expect(page.url()).toContain('/console/project-fra-'); + + await page.waitForURL(new RegExp(`/project-${region}-[^/]+`)); + expect(page.url()).toContain(`/console/project-${region}-`); return getProjectIdFromUrl(page.url()); }); diff --git a/e2e/steps/pro-project.ts b/e2e/steps/pro-project.ts index 94cbb601f..3f3a7ec1f 100644 --- a/e2e/steps/pro-project.ts +++ b/e2e/steps/pro-project.ts @@ -50,10 +50,21 @@ export async function createProProject(page: Page): Promise { await page.waitForURL(/\/organization-[^/]+/); await page.getByRole('button', { name: 'create project' }).first().click(); const dialog = page.locator('dialog[open]'); + await dialog.getByPlaceholder('Project name').fill('test project'); + + let region = 'fra'; // for fallback + const regionPicker = dialog.locator('button[role="combobox"]'); + if (await regionPicker.isVisible()) { + await regionPicker.click(); + await page.getByRole('option', { name: /New York/i }).click(); + + region = 'nyc'; + } + await dialog.getByRole('button', { name: 'create' }).click(); - await page.waitForURL(/\/project-fra-[^/]+/); - expect(page.url()).toContain('/console/project-fra-'); + await page.waitForURL(new RegExp(`/project-${region}-[^/]+`)); + expect(page.url()).toContain(`/console/project-${region}-`); return getProjectIdFromUrl(page.url()); });