From 419d430dbc878b64f6e9a99a5d8a736364fc182f Mon Sep 17 00:00:00 2001 From: Paul Jankowski <8BitTitan@gmail.com> Date: Wed, 29 Jul 2026 15:48:16 -0400 Subject: [PATCH] fix: e2e tests --- e2e/fixtures.ts | 4 +++- e2e/search.spec.ts | 16 +++++++++------- package.json | 4 ++-- playwright.config.ts | 5 +++++ 4 files changed, 19 insertions(+), 10 deletions(-) diff --git a/e2e/fixtures.ts b/e2e/fixtures.ts index c4ea5b21..9b34df75 100644 --- a/e2e/fixtures.ts +++ b/e2e/fixtures.ts @@ -19,7 +19,9 @@ export class DocSearchPage { this.searchButton = page.locator('.DocSearch-Button'); this.modal = page.locator('.DocSearch-Modal'); this.input = page.locator('.DocSearch-Input'); - this.hits = page.locator('.DocSearch-Hits').first(); + this.hits = page + .locator('.DocSearch-Hits #docsearch-hits_docsearch-list') + .first(); this.clearButton = page.locator('.DocSearch-Clear'); this.firstHit = page .locator('#docsearch-hits_docsearch-list .DocSearch-Hit a') diff --git a/e2e/search.spec.ts b/e2e/search.spec.ts index 4574a7bb..aa9dc68e 100644 --- a/e2e/search.spec.ts +++ b/e2e/search.spec.ts @@ -198,9 +198,9 @@ test.describe('Recent and Favorites', () => { test('Recent search can be pinned', async ({ page }) => { await page .locator('#docsearch-recentSearches-item-0') - .locator('[title="Pin this search"]') + .locator('[title="Save this search"]') .click(); - await expect(page.getByText('Pinned')).toBeVisible(); + await expect(page.getByText('Favorite')).toBeVisible(); await expect( page.locator('#docsearch-favoriteSearches-item-0') ).toBeVisible(); @@ -208,13 +208,15 @@ test.describe('Recent and Favorites', () => { test('Pinned can be deleted', async ({ docSearch, page }) => { await page - .locator('#docsearch-recentSearches-item-0') - .locator('[title="Pin this search"]') + .locator('#docsearch-recentSearches-list .DocSearch-Hit') + .first() + .locator('[title="Save this search"]') .click(); - await expect(page.getByText('Pinned')).toBeVisible(); + await expect(page.getByText('Favorite')).toBeVisible(); await page - .locator('#docsearch-favoriteSearches-item-0') - .locator('[title="Remove this saved search"]') + .locator('#docsearch-favoriteSearches-list .DocSearch-Hit') + .first() + .locator('[title="Remove this search from favorites"]') .click(); await expect(docSearch.hits).not.toBeVisible(); }); diff --git a/package.json b/package.json index d267a8cc..664a075e 100644 --- a/package.json +++ b/package.json @@ -26,11 +26,11 @@ "build:examples": "bun --filter './examples/*' build", "fmt": "oxfmt --config ./.oxfmtrc.json .", "pw:clean": "rm -rf playwright-report test-results", - "pw:run": "start-server-and-test 'bun run website:test' http://localhost:3000 'playwright test'", + "pw:run": "playwright test", "pw:run:chromium": "bun run pw:run -- --project=chromium", "pw:run:firefox": "bun run pw:run -- --project=firefox", "pw:run:webkit": "bun run pw:run -- --project=webkit", - "pw:ui": "start-server-and-test 'bun run website:test' http://localhost:3000 'playwright test --ui'", + "pw:ui": "playwright test --ui", "lint:css": "stylelint **/src/**/*.css", "lint": "oxlint .", "lint:fix": "oxlint --fix .", diff --git a/playwright.config.ts b/playwright.config.ts index b9fb599a..f5e46aba 100644 --- a/playwright.config.ts +++ b/playwright.config.ts @@ -11,6 +11,11 @@ export default defineConfig({ baseURL: 'http://localhost:3000', trace: 'on-first-retry', }, + webServer: { + command: 'bun run website:test', + reuseExistingServer: true, + port: 3000, + }, projects: [ { name: 'chromium',