From 02c37e9bdada5678a217d896e2ad504d2d35e449 Mon Sep 17 00:00:00 2001 From: 4gray Date: Thu, 23 Apr 2026 09:17:56 +0200 Subject: [PATCH] test(e2e): refactor recent source card visibility checks in Electron provider tests --- .../electron-backend-e2e/src/providers.e2e.ts | 39 ++++++++++++++----- 1 file changed, 29 insertions(+), 10 deletions(-) diff --git a/apps/electron-backend-e2e/src/providers.e2e.ts b/apps/electron-backend-e2e/src/providers.e2e.ts index 88ffe5054..236c935fc 100644 --- a/apps/electron-backend-e2e/src/providers.e2e.ts +++ b/apps/electron-backend-e2e/src/providers.e2e.ts @@ -1,3 +1,5 @@ +import type { Page } from '@playwright/test'; + import { addStalkerPortal, addXtreamPortal, @@ -30,11 +32,10 @@ test.describe('Electron Provider Smoke Tests', () => { await expectPortalDebugSuccess(app.mainWindow, 'xtream'); await goToDashboard(app.mainWindow); - await expect( - app.mainWindow.getByRole('link', { - name: new RegExp(defaultXtreamPortalName, 'i'), - }) - ).toBeVisible(); + await expectRecentSourceCard( + app.mainWindow, + defaultXtreamPortalName + ); } finally { await closeElectronApp(app); } @@ -56,13 +57,31 @@ test.describe('Electron Provider Smoke Tests', () => { await expectPortalDebugSuccess(app.mainWindow, 'stalker'); await goToDashboard(app.mainWindow); - await expect( - app.mainWindow.getByRole('link', { - name: new RegExp(defaultStalkerPortalName, 'i'), - }) - ).toBeVisible(); + await expectRecentSourceCard( + app.mainWindow, + defaultStalkerPortalName + ); } finally { await closeElectronApp(app); } }); }); + +async function expectRecentSourceCard( + page: Page, + title: string +): Promise { + await expect( + page.getByTestId('dashboard-recent-sources-rail') + ).toBeVisible({ + timeout: 20000, + }); + + await expect( + page.getByTestId('dashboard-recent-sources-rail-card').filter({ + hasText: title, + }).first() + ).toBeVisible({ + timeout: 20000, + }); +}