Upgrade waitForAngular to wait for route content, fix remaining UI tests
The generic waitForAngular matched the sidebar nav immediately but route content (tables, tabs, forms) hadn't rendered yet. Updated waitForAngular selector to wait for route-level elements: stella-page-tabs, .integration-list, .source-catalog, table tbody tr, h1, [role=tablist], .detail-grid, .wizard-step, form. Also fixed activity-timeline and pagination tests (still had waitForTimeout(2_000) instead of waitForAngular). Increased fallback timeout from 5s to 8s for slow-loading pages. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -635,7 +635,7 @@ test.describe('Integration Services — UI Verification', () => {
|
||||
|
||||
test('Registries tab lists registry integrations', async ({ liveAuthPage: page }) => {
|
||||
await page.goto(`${BASE}/setup/integrations/registries`, { waitUntil: 'domcontentloaded', timeout: 45_000 });
|
||||
await page.waitForTimeout(2_000);
|
||||
await waitForAngular(page);
|
||||
|
||||
const heading = page.getByRole('heading', { name: /registry/i });
|
||||
await expect(heading).toBeVisible({ timeout: 5_000 });
|
||||
@@ -650,7 +650,7 @@ test.describe('Integration Services — UI Verification', () => {
|
||||
|
||||
test('SCM tab lists SCM integrations', async ({ liveAuthPage: page }) => {
|
||||
await page.goto(`${BASE}/setup/integrations/scm`, { waitUntil: 'domcontentloaded', timeout: 45_000 });
|
||||
await page.waitForTimeout(2_000);
|
||||
await waitForAngular(page);
|
||||
|
||||
const heading = page.getByRole('heading', { name: /scm/i });
|
||||
await expect(heading).toBeVisible({ timeout: 5_000 });
|
||||
@@ -664,7 +664,7 @@ test.describe('Integration Services — UI Verification', () => {
|
||||
|
||||
test('CI/CD tab lists CI/CD integrations', async ({ liveAuthPage: page }) => {
|
||||
await page.goto(`${BASE}/setup/integrations/ci`, { waitUntil: 'domcontentloaded', timeout: 45_000 });
|
||||
await page.waitForTimeout(2_000);
|
||||
await waitForAngular(page);
|
||||
|
||||
const heading = page.getByRole('heading', { name: /ci\/cd/i });
|
||||
await expect(heading).toBeVisible({ timeout: 5_000 });
|
||||
@@ -678,7 +678,7 @@ test.describe('Integration Services — UI Verification', () => {
|
||||
|
||||
test('tab switching navigates between all tabs', async ({ liveAuthPage: page }) => {
|
||||
await page.goto(`${BASE}/setup/integrations`, { waitUntil: 'domcontentloaded', timeout: 45_000 });
|
||||
await page.waitForTimeout(2_000);
|
||||
await waitForAngular(page);
|
||||
|
||||
const tabs = ['Registries', 'SCM', 'CI/CD', 'Runtimes / Hosts', 'Advisory & VEX', 'Secrets'];
|
||||
|
||||
|
||||
Reference in New Issue
Block a user