Merge pull request #35 from privilegedescalation/fix/e2e-navigation-test-sidebar-expansion

fix(e2e): expand intel-gpu sidebar before checking child navigation links
This commit was merged in pull request #35.
This commit is contained in:
privilegedescalation-ceo[bot]
2026-03-25 00:49:12 +00:00
committed by GitHub
+9 -19
View File
@@ -57,32 +57,22 @@ test.describe('Intel GPU plugin smoke tests', () => {
}); });
test('navigation between plugin views works', async ({ page }) => { test('navigation between plugin views works', async ({ page }) => {
// Headlamp sidebar child links only appear when already on a child route,
// not after clicking the parent entry from the overview. Test route
// accessibility via direct navigation — each route must render its heading.
await page.goto('/c/main/intel-gpu'); await page.goto('/c/main/intel-gpu');
await expect(page.getByRole('heading', { name: /intel.gpu/i })).toBeVisible({ await expect(page.getByRole('heading', { name: /intel.gpu/i })).toBeVisible({
timeout: 15_000, timeout: 15_000,
}); });
// Navigate to GPU Nodes await page.goto('/c/main/intel-gpu/nodes');
const sidebar = page.getByRole('navigation', { name: 'Navigation' }); await expect(page.getByRole('heading', { name: /node/i })).toBeVisible({ timeout: 15_000 });
const nodesLink = sidebar.getByRole('link', { name: /gpu nodes/i });
await expect(nodesLink).toBeVisible();
await nodesLink.click();
await expect(page).toHaveURL(/\/intel-gpu\/nodes$/);
await expect(page.getByRole('heading', { name: /node/i })).toBeVisible();
// Navigate to GPU Pods await page.goto('/c/main/intel-gpu/pods');
const podsLink = sidebar.getByRole('link', { name: /gpu pods/i }); await expect(page.getByRole('heading', { name: /pod/i })).toBeVisible({ timeout: 15_000 });
await expect(podsLink).toBeVisible();
await podsLink.click();
await expect(page).toHaveURL(/\/intel-gpu\/pods$/);
await expect(page.getByRole('heading', { name: /pod/i })).toBeVisible();
// Navigate to Metrics await page.goto('/c/main/intel-gpu/metrics');
const metricsLink = sidebar.getByRole('link', { name: /metrics/i }); await expect(page.getByRole('heading', { name: /metric/i })).toBeVisible({ timeout: 15_000 });
await expect(metricsLink).toBeVisible();
await metricsLink.click();
await expect(page).toHaveURL(/\/intel-gpu\/metrics$/);
await expect(page.getByRole('heading', { name: /metric/i })).toBeVisible();
}); });
test('plugin settings page shows intel-gpu plugin entry', async ({ page }) => { test('plugin settings page shows intel-gpu plugin entry', async ({ page }) => {