From 464d2eda016b4ba56f362710da04d642fce0fa61 Mon Sep 17 00:00:00 2001 From: Claude Date: Mon, 30 Mar 2026 06:48:49 +0000 Subject: [PATCH] fix(e2e): use mat-button-toggle value selectors for playlist type selection mat-button-toggle elements inside a group render their internal buttons with role="radio", not role="button", so getByRole('button') selectors fail. Switch to attribute selectors targeting the value attribute instead. https://claude.ai/code/session_01VU6ZZTG7YrhKhKBQvBfmpp --- apps/web-e2e/src/basic.e2e.ts | 2 +- apps/web-e2e/src/stalker.e2e.ts | 2 +- apps/web-e2e/src/xtream.e2e.ts | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/web-e2e/src/basic.e2e.ts b/apps/web-e2e/src/basic.e2e.ts index d9dac42d6..65e672787 100644 --- a/apps/web-e2e/src/basic.e2e.ts +++ b/apps/web-e2e/src/basic.e2e.ts @@ -12,7 +12,7 @@ test('basic test', async ({ page }) => { // Upload playlist test await page.getByRole('button', { name: 'Add playlist' }).click(); const dialog = page.locator('mat-dialog-container'); - await dialog.getByRole('button', { name: 'Add via file upload' }).click(); + await dialog.locator('mat-button-toggle[value="file"]').click(); await page.setInputFiles('input[type="file"]', fixturePath); await page.waitForURL(/\/workspace\/playlists\/.+\/all$/); await expect(page.getByText('test.m3u')).toBeVisible(); diff --git a/apps/web-e2e/src/stalker.e2e.ts b/apps/web-e2e/src/stalker.e2e.ts index a12b44148..39e2b90d4 100644 --- a/apps/web-e2e/src/stalker.e2e.ts +++ b/apps/web-e2e/src/stalker.e2e.ts @@ -76,7 +76,7 @@ async function addStalkerPortal( await page.getByRole('button', { name: 'Add playlist' }).click(); const dialog = page.locator('mat-dialog-container'); - await dialog.getByRole('button', { name: 'Stalker' }).click(); + await dialog.locator('mat-button-toggle[value="stalker"]').click(); await setInputValue(dialog.locator('input#title'), name); await setInputValue(dialog.locator('input#portalUrl'), PORTAL_URL); diff --git a/apps/web-e2e/src/xtream.e2e.ts b/apps/web-e2e/src/xtream.e2e.ts index a7bd97653..7152fa0e9 100644 --- a/apps/web-e2e/src/xtream.e2e.ts +++ b/apps/web-e2e/src/xtream.e2e.ts @@ -56,7 +56,7 @@ async function addXtreamPortal( await page.getByRole('button', { name: 'Add playlist' }).click(); const dialog = page.locator('mat-dialog-container'); - await dialog.getByRole('button', { name: 'Xtream' }).click(); + await dialog.locator('mat-button-toggle[value="xtream"]').click(); await dialog.locator('#title').fill(name); await dialog.locator('#serverUrl').fill(MOCK_SERVER);