From 7f3fff96345832dc9b7736877d0fb06aca218458 Mon Sep 17 00:00:00 2001 From: Michael Li Date: Wed, 22 Jan 2025 15:07:48 -0500 Subject: [PATCH 1/3] test(e2e): Update "Inactive" locators --- e2e-tests/admin/tests/auth-method-ldap.spec.js | 2 +- e2e-tests/admin/tests/auth-method-oidc-vault.spec.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/e2e-tests/admin/tests/auth-method-ldap.spec.js b/e2e-tests/admin/tests/auth-method-ldap.spec.js index 3614facb37..91610846b6 100644 --- a/e2e-tests/admin/tests/auth-method-ldap.spec.js +++ b/e2e-tests/admin/tests/auth-method-ldap.spec.js @@ -109,7 +109,7 @@ test('Set up LDAP auth method @ce @ent @docker', async ({ ).toBeVisible(); // Change state to active-public - await page.getByTitle('Inactive').click(); + await page.getByRole('button', { name: 'Inactive' }).click(); await page.getByText('Public').click(); await expect( page.getByRole('alert').getByText('Success', { exact: true }), diff --git a/e2e-tests/admin/tests/auth-method-oidc-vault.spec.js b/e2e-tests/admin/tests/auth-method-oidc-vault.spec.js index fc7907c1d3..731615d010 100644 --- a/e2e-tests/admin/tests/auth-method-oidc-vault.spec.js +++ b/e2e-tests/admin/tests/auth-method-oidc-vault.spec.js @@ -71,7 +71,7 @@ test('Set up OIDC auth method @ce @ent @docker @aws', async ({ ); // Change OIDC Auth Method state to active-public - await page.getByTitle('Inactive').click(); + await page.getByRole('button', { name: 'Inactive' }).click(); await page.getByText('Public').click(); await expect( page.getByRole('alert').getByText('Success', { exact: true }), From fd46877147d8c34712942b6b6a2f625469f7277b Mon Sep 17 00:00:00 2001 From: Michael Li Date: Wed, 22 Jan 2025 15:10:56 -0500 Subject: [PATCH 2/3] test(e2e): Update worker filter locators --- e2e-tests/admin/pages/storage-buckets.js | 14 ++++++++++---- e2e-tests/admin/pages/targets.js | 8 ++++---- e2e-tests/admin/tests/target.spec.js | 4 ++-- 3 files changed, 16 insertions(+), 10 deletions(-) diff --git a/e2e-tests/admin/pages/storage-buckets.js b/e2e-tests/admin/pages/storage-buckets.js index 909445ecb3..d939d6d813 100644 --- a/e2e-tests/admin/pages/storage-buckets.js +++ b/e2e-tests/admin/pages/storage-buckets.js @@ -32,7 +32,7 @@ export class StorageBucketsPage extends BaseResourcePage { .getByRole('link', { name: 'Storage Buckets', exact: true }) .click(); await this.page.getByRole('link', { name: 'New Storage Bucket' }).click(); - await this.page.getByLabel(new RegExp('Name*')).fill(storageBucketName); + await this.page.getByLabel('Name (Optional)').fill(storageBucketName); await this.page.getByLabel('Scope').selectOption({ label: scope }); await this.page .getByRole('group', { name: 'Provider' }) @@ -42,7 +42,10 @@ export class StorageBucketsPage extends BaseResourcePage { await this.page.getByLabel('Region').fill(region); await this.page.getByLabel('Access key ID').fill(accessKeyId); await this.page.getByLabel('Secret access key').fill(secretAccessKey); - await this.page.getByLabel('Worker filter').fill(workerFilter); + await this.page + .getByLabel('Worker filter') + .locator('textarea') + .fill(workerFilter); await this.page.getByLabel('Disable credential rotation').click(); await this.page.getByRole('button', { name: 'Save' }).click(); await this.dismissSuccessAlert(); @@ -80,7 +83,7 @@ export class StorageBucketsPage extends BaseResourcePage { .getByRole('link', { name: 'Storage Buckets', exact: true }) .click(); await this.page.getByRole('link', { name: 'New Storage Bucket' }).click(); - await this.page.getByLabel(new RegExp('Name*')).fill(storageBucketName); + await this.page.getByLabel('Name (Optional)').fill(storageBucketName); await this.page.getByLabel('Scope').selectOption({ label: scope }); await this.page .getByRole('group', { name: 'Provider' }) @@ -91,7 +94,10 @@ export class StorageBucketsPage extends BaseResourcePage { await this.page.getByLabel('Region').fill(region); await this.page.getByLabel('Access key ID').fill(accessKeyId); await this.page.getByLabel('Secret access key').fill(secretAccessKey); - await this.page.getByLabel('Worker filter').fill(workerFilter); + await this.page + .getByLabel('Worker filter') + .locator('textarea') + .fill(workerFilter); await this.page.getByLabel('Disable credential rotation').click(); await this.page.getByRole('button', { name: 'Save' }).click(); await this.dismissSuccessAlert(); diff --git a/e2e-tests/admin/pages/targets.js b/e2e-tests/admin/pages/targets.js index c007a13186..7d79e82c71 100644 --- a/e2e-tests/admin/pages/targets.js +++ b/e2e-tests/admin/pages/targets.js @@ -299,7 +299,7 @@ export class TargetsPage extends BaseResourcePage { await this.page .getByText('Ingress workers') .locator('..') - .getByRole('link', { name: 'Edit worker filter' }) + .getByRole('link', { name: 'Add worker filter' }) .click(); await expect( this.page @@ -307,7 +307,7 @@ export class TargetsPage extends BaseResourcePage { .getByText('Edit Ingress Worker Filter'), ).toBeVisible(); - await this.page.getByRole('textbox').fill(filter); + await this.page.locator('textarea').fill(filter); await this.page.getByRole('button', { name: 'Save' }).click(); await this.dismissSuccessAlert(); @@ -328,7 +328,7 @@ export class TargetsPage extends BaseResourcePage { await this.page .getByText('Egress workers') .locator('..') - .getByRole('link', { name: 'Edit worker filter' }) + .getByRole('link', { name: 'Add worker filter' }) .click(); await expect( this.page @@ -336,7 +336,7 @@ export class TargetsPage extends BaseResourcePage { .getByText('Edit Egress Worker Filter'), ).toBeVisible(); - await this.page.getByRole('textbox').fill(filter); + await this.page.locator('textarea').fill(filter); await this.page.getByRole('button', { name: 'Save' }).click(); await this.dismissSuccessAlert(); diff --git a/e2e-tests/admin/tests/target.spec.js b/e2e-tests/admin/tests/target.spec.js index e6f59c89dd..98ac5ecc69 100644 --- a/e2e-tests/admin/tests/target.spec.js +++ b/e2e-tests/admin/tests/target.spec.js @@ -211,10 +211,10 @@ test('Verify TCP target is updated @ce @aws @docker', async ({ ).toBeVisible(); await expect(page.getByText('"dev" in "/tags/type"')).toBeVisible(); - await page.getByRole('textbox').click({ force: true }); + await page.locator('textarea').click({ force: true }); await page.keyboard.press('Meta+A'); await page.keyboard.press('Backspace'); - await page.getByRole('textbox').fill('"prod" in "/tags/type"'); + await page.locator('textarea').fill('"prod" in "/tags/type"'); await page.getByRole('button', { name: 'Save' }).click(); const basePage = new BasePage(page); await basePage.dismissSuccessAlert(); From 0e891866f5dbf339601283e53b4eda489e387ecf Mon Sep 17 00:00:00 2001 From: Michael Li Date: Fri, 24 Jan 2025 10:15:30 -0500 Subject: [PATCH 3/3] test(e2e): Address flake Ensure that the test has reached the org page before trying to click the Auth Methods link (there is an auth method link on both the global page and the org page). --- e2e-tests/admin/tests/auth-method-oidc-vault.spec.js | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/e2e-tests/admin/tests/auth-method-oidc-vault.spec.js b/e2e-tests/admin/tests/auth-method-oidc-vault.spec.js index 731615d010..cf8b48a826 100644 --- a/e2e-tests/admin/tests/auth-method-oidc-vault.spec.js +++ b/e2e-tests/admin/tests/auth-method-oidc-vault.spec.js @@ -140,6 +140,11 @@ test('Set up OIDC auth method @ce @ent @docker @aws', async ({ // View the OIDC account and verify account attributes await page.getByRole('link', { name: orgName }).click(); + await expect( + page + .getByRole('navigation', { name: 'breadcrumbs' }) + .getByText(orgName), + ).toBeVisible(); await page .getByRole('navigation', { name: 'IAM' }) .getByRole('link', { name: 'Auth Methods' })