Compare commits

..

5 Commits

Author SHA1 Message Date
Chris Farhood ac8c2499a2 fix(e2e): reference @main workflow after .github merge
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-05 17:43:52 +00:00
Chris Farhood 13347ab9c1 fix(e2e): prevent stale sidebar reference in storage-classes navigation test
Re-acquire sidebar reference after clicking Rook button to avoid
stale locator capturing wrong sidebar state during transition.

PR #56 follow-up for PRI-699.
2026-05-05 14:02:34 +00:00
Chris Farhood 0d9f9d859a fix(e2e): use .first() to handle strict mode violations (PRI-699)
Similar to the kube-vip fix, /overview/i and /storage class/i can
match multiple headings. Using .first() to avoid strict mode violations.
2026-05-05 13:56:35 +00:00
Chris Farhood 61df61c691 fix(e2e): expand storage classes sidebar nav and relax plugin settings locator
The 'Storage Classes' link is nested under the Rook sidebar button, not
at the top level. Expand the Rook section before asserting visibility.
Also uses /rook/i case-insensitive regex and waits for the plugins list
to render before searching.
2026-05-05 13:04:45 +00:00
Chris Farhood 15d161c312 fix(e2e): use pnpm-capable workflow branch with namespace param 2026-05-05 12:21:22 +00:00
4 changed files with 14 additions and 25 deletions
+2 -2
View File
@@ -16,8 +16,8 @@ concurrency:
jobs:
e2e:
uses: privilegedescalation/.github/.github/workflows/plugin-e2e.yaml@hugh/add-pnpm-support-plugin-e2e
uses: privilegedescalation/.github/.github/workflows/plugin-e2e.yaml@main
with:
node-version: '22'
node-version: "22"
headlamp-version: v0.40.1
e2e-namespace: headlamp-dev
-14
View File
@@ -1,14 +0,0 @@
name: Renovate
on:
schedule:
- cron: '0 3 * * *'
workflow_dispatch:
jobs:
renovate:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: renovatebot/github-action@v40.3.0
with:
configurationFile: renovate.json
renovate-json5: true
+11 -7
View File
@@ -42,15 +42,19 @@ test.describe('Rook plugin smoke tests', () => {
test('navigation to storage classes view works', async ({ page }) => {
await page.goto('/c/main/rook-ceph');
await waitForSidebar(page);
const sidebar = page.getByRole('navigation', { name: 'Navigation' });
const rookBtn = sidebar.getByRole('button', { name: /rook/i });
await rookBtn.click();
const storageClassesBtn = sidebar.getByRole('button', { name: /storage classes/i });
await storageClassesBtn.waitFor({ state: 'visible', timeout: 15_000 });
await storageClassesBtn.click();
const rookBtn = sidebar.getByRole('button', { name: /rook/i });
await expect(rookBtn).toBeVisible();
await rookBtn.click();
await page.waitForLoadState('networkidle');
const sidebarAfterClick = page.getByRole('navigation', { name: 'Navigation' });
await expect(sidebarAfterClick).toBeVisible();
const storageClassesLink = sidebarAfterClick.getByRole('link', { name: /storage classes/i });
await storageClassesLink.waitFor({ state: 'visible', timeout: 15_000 });
await storageClassesLink.click();
await page.waitForLoadState('networkidle');
await expect(page).toHaveURL(/rook-ceph\/storage-classes/);
+1 -2
View File
@@ -50,7 +50,6 @@
"tar": "^7.5.11",
"undici": "^7.24.3",
"vite": ">=6.4.2",
"lodash": ">=4.18.0",
"elliptic": ">=6.6.1"
"lodash": ">=4.18.0"
}
}