Skip to content

feat: Featured Snippets integration for Community page#383

Open
code-snippets-bot wants to merge 7 commits intocore-betafrom
feat/community-page
Open

feat: Featured Snippets integration for Community page#383
code-snippets-bot wants to merge 7 commits intocore-betafrom
feat/community-page

Conversation

@code-snippets-bot
Copy link
Copy Markdown
Contributor

@code-snippets-bot code-snippets-bot commented May 5, 2026

Re-opening PR #341 after branch rename. Plugin-side integration for the new Featured Snippets cloud endpoint. Community Snippets page shows featured snippets on initial load.

Original PR: #341

Summary

Plugin-side integration for the new Featured Snippets cloud endpoint. Community Snippets page now shows featured snippets on initial load (no search active).

New/modified files

  • Cloud_API.phpget_featured_snippets(): calls GET /api/v1/public/featured, transient cache with TTL from cached_until, graceful fallback on error
  • Cloud_Snippets_REST_Controller.php — new WP REST endpoint at cloud/featured
  • WithCloudSearchContext.tsx — loads featured on mount, 500ms debounce on search, stale-request guard via request ID counter
  • CloudSearch.tsx — Featured Snippets heading when displaying featured data

Key decisions

  • Transient TTL synced from cloud response cached_until (min 1 hour floor)
  • Debounced search (500ms) prevents stale fetch race conditions
  • Graceful fallback: returns empty Cloud_Snippets on any error (never fatal)
  • No custom DB tables — transients only

Tests

  • 9 PHPUnit tests: Cloud_Snippets return type, transient set/hit, HTTP error fallback, invalid JSON, empty body, missing data key, TTL respect, instance type check
  • 1 Playwright E2E spec: page load, featured heading, search override
  • ESLint: 0 errors

Add get_featured_snippets() to Cloud_API that fetches from the cloud
/api/v1/featured endpoint with transient caching derived from the
cached_until response field. Add /cloud/featured REST route to expose
featured snippets to the frontend.
Load featured snippets on the Community Cloud page when no search query
is active. The frontend context fetches from the /cloud/featured REST
endpoint on mount and displays results under a "Featured Snippets"
heading. When the user performs a search, normal search behaviour takes
over. Add PHPUnit tests covering transient caching, cache-hit bypass,
and graceful fallback on HTTP errors.
Add 3 additional PHPUnit tests: TTL respects cached_until, missing data
key returns empty result, and transient stores Cloud_Snippets instance.
Add Playwright E2E spec for community cloud page covering page load,
featured heading display, and search override behavior.
Copy link
Copy Markdown
Contributor

@louiswol94 louiswol94 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This PR is clean!

The only suggestion I can make is to mock the responses via Playwright page.route() + route.fulfill() with fixed JSON and X-WP-Total / X-WP-TotalPages headers. That avoids depending on a live cloud/API, removes flakiness from timeouts and env differences, and lets us assert the featured heading, row content, and “search hides featured” etc deterministically. Happy for this to land as a follow-up.

@louiswol94 louiswol94 added the run-tests Trigger automated tests label May 5, 2026
@louiswol94
Copy link
Copy Markdown
Contributor

louiswol94 commented May 5, 2026

PlayWright tests are failing

@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 5, 2026

Playwright Test Failure

One or more Playwright targets failed in this workflow run.

See all Playwright errors (click to expand)

Affected Playwright test: all

FAILURE: code-snippets-community-featured.spec.ts:18:6 Page loads without JavaScript errors
[chromium-db-snippets] › code-snippets-community-featured.spec.ts:18:6 › Community Cloud Featured Snippets › Page loads without JavaScript errors 

    Error: expect(locator).toBeVisible() failed

    Locator: locator('.cloud-search')
    Expected: visible
    Timeout: 30000ms
    Error: element(s) not found

    Call log:
      - Expect "toBeVisible" with timeout 30000ms
      - waiting for locator('.cloud-search')


      18 | 	test('Page loads without JavaScript errors', async ({ page }) => {
      19 | 		// Wait for the cloud search form to render, confirming the React app mounted.
    > 20 | 		await expect(page.locator('.cloud-search')).toBeVisible({ timeout: TIMEOUTS.DEFAULT })
         | 		                                            ^
      21 |
      22 | 		expect(jsErrors).toHaveLength(0)
      23 | 	})
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-community-featured.spec.ts:20:47

    attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
    ../../test-results/code-snippets-community-fe-89df3-s-without-JavaScript-errors-chromium-db-snippets/test-failed-1.png
    ────────────────────────────────────────────────────────────────────────────────────────────────

    attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
    ../../test-results/code-snippets-community-fe-89df3-s-without-JavaScript-errors-chromium-db-snippets/video.webm
    ────────────────────────────────────────────────────────────────────────────────────────────────

    Error Context: ../../test-results/code-snippets-community-fe-89df3-s-without-JavaScript-errors-chromium-db-snippets/error-context.md

    attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
    ../../test-results/code-snippets-community-fe-89df3-s-without-JavaScript-errors-chromium-db-snippets/trace.zip
    Usage:

        npx playwright show-trace ../../test-results/code-snippets-community-fe-89df3-s-without-JavaScript-errors-chromium-db-snippets/trace.zip

    ────────────────────────────────────────────────────────────────────────────────────────────────

Affected Playwright test: all

FAILURE: code-snippets-community-featured.spec.ts:25:6 Featured heading appears or graceful empty state
[chromium-db-snippets] › code-snippets-community-featured.spec.ts:25:6 › Community Cloud Featured Snippets › Featured heading appears or graceful empty state 

    Error: expect(locator).toBeVisible() failed

    Locator: locator('.cloud-search')
    Expected: visible
    Timeout: 30000ms
    Error: element(s) not found

    Call log:
      - Expect "toBeVisible" with timeout 30000ms
      - waiting for locator('.cloud-search')


      25 | 	test('Featured heading appears or graceful empty state', async ({ page }) => {
      26 | 		// Wait for the search form — this confirms the page rendered.
    > 27 | 		await expect(page.locator('.cloud-search')).toBeVisible({ timeout: TIMEOUTS.DEFAULT })
         | 		                                            ^
      28 |
      29 | 		// Wait for the loading spinner to disappear, indicating the featured request completed.
      30 | 		await page.locator('.cloud-search .components-spinner').waitFor({ state: 'hidden', timeout: TIMEOUTS.DEFAULT }).catch(() => undefined)
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-community-featured.spec.ts:27:47

    attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
    ../../test-results/code-snippets-community-fe-bad7a-ars-or-graceful-empty-state-chromium-db-snippets/test-failed-1.png
    ────────────────────────────────────────────────────────────────────────────────────────────────

    attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
    ../../test-results/code-snippets-community-fe-bad7a-ars-or-graceful-empty-state-chromium-db-snippets/video.webm
    ────────────────────────────────────────────────────────────────────────────────────────────────

    Error Context: ../../test-results/code-snippets-community-fe-bad7a-ars-or-graceful-empty-state-chromium-db-snippets/error-context.md

    attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
    ../../test-results/code-snippets-community-fe-bad7a-ars-or-graceful-empty-state-chromium-db-snippets/trace.zip
    Usage:

        npx playwright show-trace ../../test-results/code-snippets-community-fe-bad7a-ars-or-graceful-empty-state-chromium-db-snippets/trace.zip

    ────────────────────────────────────────────────────────────────────────────────────────────────

Affected Playwright test: all

FAILURE: code-snippets-community-featured.spec.ts:48:6 Search overrides featured heading
[chromium-db-snippets] › code-snippets-community-featured.spec.ts:48:6 › Community Cloud Featured Snippets › Search overrides featured heading 

    Error: expect(locator).toBeVisible() failed

    Locator: locator('.cloud-search')
    Expected: visible
    Timeout: 30000ms
    Error: element(s) not found

    Call log:
      - Expect "toBeVisible" with timeout 30000ms
      - waiting for locator('.cloud-search')


      48 | 	test('Search overrides featured heading', async ({ page }) => {
      49 | 		// Wait for the page to be ready.
    > 50 | 		await expect(page.locator('.cloud-search')).toBeVisible({ timeout: TIMEOUTS.DEFAULT })
         | 		                                            ^
      51 |
      52 | 		// Type a search term.
      53 | 		const searchInput = page.locator('#cloud-search-query')
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-community-featured.spec.ts:50:47

    attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
    ../../test-results/code-snippets-community-fe-d57bb--overrides-featured-heading-chromium-db-snippets/test-failed-1.png
    ────────────────────────────────────────────────────────────────────────────────────────────────

    attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
    ../../test-results/code-snippets-community-fe-d57bb--overrides-featured-heading-chromium-db-snippets/video.webm
    ────────────────────────────────────────────────────────────────────────────────────────────────

    Error Context: ../../test-results/code-snippets-community-fe-d57bb--overrides-featured-heading-chromium-db-snippets/error-context.md

    attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
    ../../test-results/code-snippets-community-fe-d57bb--overrides-featured-heading-chromium-db-snippets/trace.zip
    Usage:

        npx playwright show-trace ../../test-results/code-snippets-community-fe-d57bb--overrides-featured-heading-chromium-db-snippets/trace.zip

    ────────────────────────────────────────────────────────────────────────────────────────────────

Affected Playwright test: all

FAILURE: code-snippets-evaluation.spec.ts:112:6 PHP snippet is evaluating correctly
[chromium-db-snippets] › code-snippets-evaluation.spec.ts:112:6 › Code Snippets Evaluation › PHP snippet is evaluating correctly 

    Test timeout of 60000ms exceeded.

    Error: locator.click: Target page, context or browser has been closed

       at helpers/SnippetsTestHelper.ts:522

      520 | 		const isChecked = await toggleCheckbox.isChecked().catch(() => false)
      521 | 		if (!isChecked) {
    > 522 | 			await toggleCheckbox.click({ timeout: TIMEOUTS.DEFAULT, force: true })
          | 			                     ^
      523 | 			await expect(toggleCheckbox).toBeChecked({ timeout: TIMEOUTS.DEFAULT })
      524 | 		}
      525 |
        at SnippetsTestHelper.createAndActivateSnippet (/home/runner/work/code-snippets/code-snippets/tests/e2e/helpers/SnippetsTestHelper.ts:522:25)
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-evaluation.spec.ts:113:3

    attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
    ../../test-results/code-snippets-evaluation-C-96fb0-pet-is-evaluating-correctly-chromium-db-snippets/test-failed-1.png
    ────────────────────────────────────────────────────────────────────────────────────────────────

    attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
    ../../test-results/code-snippets-evaluation-C-96fb0-pet-is-evaluating-correctly-chromium-db-snippets/video.webm
    ────────────────────────────────────────────────────────────────────────────────────────────────

    Error Context: ../../test-results/code-snippets-evaluation-C-96fb0-pet-is-evaluating-correctly-chromium-db-snippets/error-context.md

    attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
    ../../test-results/code-snippets-evaluation-C-96fb0-pet-is-evaluating-correctly-chromium-db-snippets/trace.zip
    Usage:

        npx playwright show-trace ../../test-results/code-snippets-evaluation-C-96fb0-pet-is-evaluating-correctly-chromium-db-snippets/trace.zip

    ────────────────────────────────────────────────────────────────────────────────────────────────

Affected Playwright test: all

FAILURE: code-snippets-evaluation.spec.ts:122:6 PHP Snippet runs everywhere
[chromium-db-snippets] › code-snippets-evaluation.spec.ts:122:6 › Code Snippets Evaluation › PHP Snippet runs everywhere 

    Test timeout of 60000ms exceeded.

    Error: locator.click: Target page, context or browser has been closed

       at helpers/SnippetsTestHelper.ts:522

      520 | 		const isChecked = await toggleCheckbox.isChecked().catch(() => false)
      521 | 		if (!isChecked) {
    > 522 | 			await toggleCheckbox.click({ timeout: TIMEOUTS.DEFAULT, force: true })
          | 			                     ^
      523 | 			await expect(toggleCheckbox).toBeChecked({ timeout: TIMEOUTS.DEFAULT })
      524 | 		}
      525 |
        at SnippetsTestHelper.createAndActivateSnippet (/home/runner/work/code-snippets/code-snippets/tests/e2e/helpers/SnippetsTestHelper.ts:522:25)
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-evaluation.spec.ts:123:3

    attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
    ../../test-results/code-snippets-evaluation-C-7c014-PHP-Snippet-runs-everywhere-chromium-db-snippets/test-failed-1.png
    ────────────────────────────────────────────────────────────────────────────────────────────────

    attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
    ../../test-results/code-snippets-evaluation-C-7c014-PHP-Snippet-runs-everywhere-chromium-db-snippets/video.webm
    ────────────────────────────────────────────────────────────────────────────────────────────────

    Error Context: ../../test-results/code-snippets-evaluation-C-7c014-PHP-Snippet-runs-everywhere-chromium-db-snippets/error-context.md

    attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
    ../../test-results/code-snippets-evaluation-C-7c014-PHP-Snippet-runs-everywhere-chromium-db-snippets/trace.zip
    Usage:

        npx playwright show-trace ../../test-results/code-snippets-evaluation-C-7c014-PHP-Snippet-runs-everywhere-chromium-db-snippets/trace.zip

    ────────────────────────────────────────────────────────────────────────────────────────────────

Affected Playwright test: all

FAILURE: code-snippets-evaluation.spec.ts:136:6 PHP Snippet runs only in Admin
[chromium-db-snippets] › code-snippets-evaluation.spec.ts:136:6 › Code Snippets Evaluation › PHP Snippet runs only in Admin 

    Test timeout of 60000ms exceeded.

    Error: locator.click: Target page, context or browser has been closed

       at helpers/SnippetsTestHelper.ts:522

      520 | 		const isChecked = await toggleCheckbox.isChecked().catch(() => false)
      521 | 		if (!isChecked) {
    > 522 | 			await toggleCheckbox.click({ timeout: TIMEOUTS.DEFAULT, force: true })
          | 			                     ^
      523 | 			await expect(toggleCheckbox).toBeChecked({ timeout: TIMEOUTS.DEFAULT })
      524 | 		}
      525 |
        at SnippetsTestHelper.createAndActivateSnippet (/home/runner/work/code-snippets/code-snippets/tests/e2e/helpers/SnippetsTestHelper.ts:522:25)
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-evaluation.spec.ts:137:3

    attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
    ../../test-results/code-snippets-evaluation-C-1be6b--Snippet-runs-only-in-Admin-chromium-db-snippets/test-failed-1.png
    ────────────────────────────────────────────────────────────────────────────────────────────────

    attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
    ../../test-results/code-snippets-evaluation-C-1be6b--Snippet-runs-only-in-Admin-chromium-db-snippets/video.webm
    ────────────────────────────────────────────────────────────────────────────────────────────────

    Error Context: ../../test-results/code-snippets-evaluation-C-1be6b--Snippet-runs-only-in-Admin-chromium-db-snippets/error-context.md

    attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
    ../../test-results/code-snippets-evaluation-C-1be6b--Snippet-runs-only-in-Admin-chromium-db-snippets/trace.zip
    Usage:

        npx playwright show-trace ../../test-results/code-snippets-evaluation-C-1be6b--Snippet-runs-only-in-Admin-chromium-db-snippets/trace.zip

    ────────────────────────────────────────────────────────────────────────────────────────────────

Affected Playwright test: all

FAILURE: code-snippets-evaluation.spec.ts:150:6 PHP Snippet runs only in Frontend
[chromium-db-snippets] › code-snippets-evaluation.spec.ts:150:6 › Code Snippets Evaluation › PHP Snippet runs only in Frontend 

    Test timeout of 60000ms exceeded.

    Error: locator.click: Target page, context or browser has been closed

       at helpers/SnippetsTestHelper.ts:522

      520 | 		const isChecked = await toggleCheckbox.isChecked().catch(() => false)
      521 | 		if (!isChecked) {
    > 522 | 			await toggleCheckbox.click({ timeout: TIMEOUTS.DEFAULT, force: true })
          | 			                     ^
      523 | 			await expect(toggleCheckbox).toBeChecked({ timeout: TIMEOUTS.DEFAULT })
      524 | 		}
      525 |
        at SnippetsTestHelper.createAndActivateSnippet (/home/runner/work/code-snippets/code-snippets/tests/e2e/helpers/SnippetsTestHelper.ts:522:25)
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-evaluation.spec.ts:151:3

    attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
    ../../test-results/code-snippets-evaluation-C-bb8e0-ippet-runs-only-in-Frontend-chromium-db-snippets/test-failed-1.png
    ────────────────────────────────────────────────────────────────────────────────────────────────

    attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
    ../../test-results/code-snippets-evaluation-C-bb8e0-ippet-runs-only-in-Frontend-chromium-db-snippets/video.webm
    ────────────────────────────────────────────────────────────────────────────────────────────────

    Error Context: ../../test-results/code-snippets-evaluation-C-bb8e0-ippet-runs-only-in-Frontend-chromium-db-snippets/error-context.md

    attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
    ../../test-results/code-snippets-evaluation-C-bb8e0-ippet-runs-only-in-Frontend-chromium-db-snippets/trace.zip
    Usage:

        npx playwright show-trace ../../test-results/code-snippets-evaluation-C-bb8e0-ippet-runs-only-in-Frontend-chromium-db-snippets/trace.zip

    ────────────────────────────────────────────────────────────────────────────────────────────────

Affected Playwright test: all

FAILURE: code-snippets-evaluation.spec.ts:164:6 HTML snippet is evaluating correctly in footer
[chromium-db-snippets] › code-snippets-evaluation.spec.ts:164:6 › Code Snippets Evaluation › HTML snippet is evaluating correctly in footer 

    Test timeout of 60000ms exceeded.

    Error: locator.click: Target page, context or browser has been closed

       at helpers/SnippetsTestHelper.ts:522

      520 | 		const isChecked = await toggleCheckbox.isChecked().catch(() => false)
      521 | 		if (!isChecked) {
    > 522 | 			await toggleCheckbox.click({ timeout: TIMEOUTS.DEFAULT, force: true })
          | 			                     ^
      523 | 			await expect(toggleCheckbox).toBeChecked({ timeout: TIMEOUTS.DEFAULT })
      524 | 		}
      525 |
        at SnippetsTestHelper.createAndActivateSnippet (/home/runner/work/code-snippets/code-snippets/tests/e2e/helpers/SnippetsTestHelper.ts:522:25)
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-evaluation.spec.ts:165:3

    attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
    ../../test-results/code-snippets-evaluation-C-92fcd-luating-correctly-in-footer-chromium-db-snippets/test-failed-1.png
    ────────────────────────────────────────────────────────────────────────────────────────────────

    attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
    ../../test-results/code-snippets-evaluation-C-92fcd-luating-correctly-in-footer-chromium-db-snippets/video.webm
    ────────────────────────────────────────────────────────────────────────────────────────────────

    Error Context: ../../test-results/code-snippets-evaluation-C-92fcd-luating-correctly-in-footer-chromium-db-snippets/error-context.md

    attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
    ../../test-results/code-snippets-evaluation-C-92fcd-luating-correctly-in-footer-chromium-db-snippets/trace.zip
    Usage:

        npx playwright show-trace ../../test-results/code-snippets-evaluation-C-92fcd-luating-correctly-in-footer-chromium-db-snippets/trace.zip

    ────────────────────────────────────────────────────────────────────────────────────────────────

Affected Playwright test: all

FAILURE: code-snippets-evaluation.spec.ts:177:6 HTML snippet is evaluating correctly in header
[chromium-db-snippets] › code-snippets-evaluation.spec.ts:177:6 › Code Snippets Evaluation › HTML snippet is evaluating correctly in header 

    Test timeout of 60000ms exceeded.

    Error: locator.click: Target page, context or browser has been closed

       at helpers/SnippetsTestHelper.ts:522

      520 | 		const isChecked = await toggleCheckbox.isChecked().catch(() => false)
      521 | 		if (!isChecked) {
    > 522 | 			await toggleCheckbox.click({ timeout: TIMEOUTS.DEFAULT, force: true })
          | 			                     ^
      523 | 			await expect(toggleCheckbox).toBeChecked({ timeout: TIMEOUTS.DEFAULT })
      524 | 		}
      525 |
        at SnippetsTestHelper.createAndActivateSnippet (/home/runner/work/code-snippets/code-snippets/tests/e2e/helpers/SnippetsTestHelper.ts:522:25)
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-evaluation.spec.ts:178:3

    attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
    ../../test-results/code-snippets-evaluation-C-27ea4-luating-correctly-in-header-chromium-db-snippets/test-failed-1.png
    ────────────────────────────────────────────────────────────────────────────────────────────────

    attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
    ../../test-results/code-snippets-evaluation-C-27ea4-luating-correctly-in-header-chromium-db-snippets/video.webm
    ────────────────────────────────────────────────────────────────────────────────────────────────

    Error Context: ../../test-results/code-snippets-evaluation-C-27ea4-luating-correctly-in-header-chromium-db-snippets/error-context.md

    attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
    ../../test-results/code-snippets-evaluation-C-27ea4-luating-correctly-in-header-chromium-db-snippets/trace.zip
    Usage:

        npx playwright show-trace ../../test-results/code-snippets-evaluation-C-27ea4-luating-correctly-in-header-chromium-db-snippets/trace.zip

    ────────────────────────────────────────────────────────────────────────────────────────────────

Affected Playwright test: all

FAILURE: code-snippets-evaluation.spec.ts:190:6 HTML snippet works with shortcode in editor
[chromium-db-snippets] › code-snippets-evaluation.spec.ts:190:6 › Code Snippets Evaluation › HTML snippet works with shortcode in editor 

    Test timeout of 60000ms exceeded.

    Error: locator.click: Target page, context or browser has been closed

       at helpers/SnippetsTestHelper.ts:522

      520 | 		const isChecked = await toggleCheckbox.isChecked().catch(() => false)
      521 | 		if (!isChecked) {
    > 522 | 			await toggleCheckbox.click({ timeout: TIMEOUTS.DEFAULT, force: true })
          | 			                     ^
      523 | 			await expect(toggleCheckbox).toBeChecked({ timeout: TIMEOUTS.DEFAULT })
      524 | 		}
      525 |
        at SnippetsTestHelper.createAndActivateSnippet (/home/runner/work/code-snippets/code-snippets/tests/e2e/helpers/SnippetsTestHelper.ts:522:25)
        at createHtmlSnippetForEditor (/home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-evaluation.spec.ts:65:2)
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-evaluation.spec.ts:191:21

    attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
    ../../test-results/code-snippets-evaluation-C-8f64e-ks-with-shortcode-in-editor-chromium-db-snippets/test-failed-1.png
    ────────────────────────────────────────────────────────────────────────────────────────────────

    attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
    ../../test-results/code-snippets-evaluation-C-8f64e-ks-with-shortcode-in-editor-chromium-db-snippets/video.webm
    ────────────────────────────────────────────────────────────────────────────────────────────────

    Error Context: ../../test-results/code-snippets-evaluation-C-8f64e-ks-with-shortcode-in-editor-chromium-db-snippets/error-context.md

    attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
    ../../test-results/code-snippets-evaluation-C-8f64e-ks-with-shortcode-in-editor-chromium-db-snippets/trace.zip
    Usage:

        npx playwright show-trace ../../test-results/code-snippets-evaluation-C-8f64e-ks-with-shortcode-in-editor-chromium-db-snippets/trace.zip

    ────────────────────────────────────────────────────────────────────────────────────────────────

Affected Playwright test: all

FAILURE: code-snippets-list.spec.ts:124:6 Can export snippet from list page
[chromium-db-snippets] › code-snippets-list.spec.ts:124:6 › Code Snippets List Page Actions › Can export snippet from list page 

    Test timeout of 60000ms exceeded while running "beforeEach" hook.

      10 | 	const EXPORT_TEST_TIMEOUT_MS = 60000
      11 |
    > 12 | 	test.beforeEach(async ({ page }) => {
         | 	     ^
      13 | 		helper = new SnippetsTestHelper(page)
      14 | 		snippetName = SnippetsTestHelper.makeUniqueSnippetName()
      15 | 		await helper.navigateToSnippetsAdmin()
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-list.spec.ts:12:7

    Error: locator.click: Target page, context or browser has been closed

       at helpers/SnippetsTestHelper.ts:522

      520 | 		const isChecked = await toggleCheckbox.isChecked().catch(() => false)
      521 | 		if (!isChecked) {
    > 522 | 			await toggleCheckbox.click({ timeout: TIMEOUTS.DEFAULT, force: true })
          | 			                     ^
      523 | 			await expect(toggleCheckbox).toBeChecked({ timeout: TIMEOUTS.DEFAULT })
      524 | 		}
      525 |
        at SnippetsTestHelper.createAndActivateSnippet (/home/runner/work/code-snippets/code-snippets/tests/e2e/helpers/SnippetsTestHelper.ts:522:25)
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-list.spec.ts:17:3

    attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-baf37-port-snippet-from-list-page-chromium-db-snippets/test-failed-1.png
    ────────────────────────────────────────────────────────────────────────────────────────────────

    attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-baf37-port-snippet-from-list-page-chromium-db-snippets/video.webm
    ────────────────────────────────────────────────────────────────────────────────────────────────

    Error Context: ../../test-results/code-snippets-list-Code-Sn-baf37-port-snippet-from-list-page-chromium-db-snippets/error-context.md

    attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-baf37-port-snippet-from-list-page-chromium-db-snippets/trace.zip
    Usage:

        npx playwright show-trace ../../test-results/code-snippets-list-Code-Sn-baf37-port-snippet-from-list-page-chromium-db-snippets/trace.zip

    ────────────────────────────────────────────────────────────────────────────────────────────────

Affected Playwright test: all

FAILURE: code-snippets-list.spec.ts:138:6 Can export multiple snippets from bulk actions
[chromium-db-snippets] › code-snippets-list.spec.ts:138:6 › Code Snippets List Page Actions › Can export multiple snippets from bulk actions 

    Test timeout of 60000ms exceeded while running "beforeEach" hook.

      10 | 	const EXPORT_TEST_TIMEOUT_MS = 60000
      11 |
    > 12 | 	test.beforeEach(async ({ page }) => {
         | 	     ^
      13 | 		helper = new SnippetsTestHelper(page)
      14 | 		snippetName = SnippetsTestHelper.makeUniqueSnippetName()
      15 | 		await helper.navigateToSnippetsAdmin()
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-list.spec.ts:12:7

    Error: locator.click: Target page, context or browser has been closed

       at helpers/SnippetsTestHelper.ts:522

      520 | 		const isChecked = await toggleCheckbox.isChecked().catch(() => false)
      521 | 		if (!isChecked) {
    > 522 | 			await toggleCheckbox.click({ timeout: TIMEOUTS.DEFAULT, force: true })
          | 			                     ^
      523 | 			await expect(toggleCheckbox).toBeChecked({ timeout: TIMEOUTS.DEFAULT })
      524 | 		}
      525 |
        at SnippetsTestHelper.createAndActivateSnippet (/home/runner/work/code-snippets/code-snippets/tests/e2e/helpers/SnippetsTestHelper.ts:522:25)
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-list.spec.ts:17:3

    attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-b95cf--snippets-from-bulk-actions-chromium-db-snippets/test-failed-1.png
    ────────────────────────────────────────────────────────────────────────────────────────────────

    attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-b95cf--snippets-from-bulk-actions-chromium-db-snippets/video.webm
    ────────────────────────────────────────────────────────────────────────────────────────────────

    Error Context: ../../test-results/code-snippets-list-Code-Sn-b95cf--snippets-from-bulk-actions-chromium-db-snippets/error-context.md

    attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-b95cf--snippets-from-bulk-actions-chromium-db-snippets/trace.zip
    Usage:

        npx playwright show-trace ../../test-results/code-snippets-list-Code-Sn-b95cf--snippets-from-bulk-actions-chromium-db-snippets/trace.zip

    ────────────────────────────────────────────────────────────────────────────────────────────────

Affected Playwright test: all

FAILURE: code-snippets-list.spec.ts:169:6 Can download a single snippet from bulk actions
[chromium-db-snippets] › code-snippets-list.spec.ts:169:6 › Code Snippets List Page Actions › Can download a single snippet from bulk actions 

    Test timeout of 60000ms exceeded while running "beforeEach" hook.

      10 | 	const EXPORT_TEST_TIMEOUT_MS = 60000
      11 |
    > 12 | 	test.beforeEach(async ({ page }) => {
         | 	     ^
      13 | 		helper = new SnippetsTestHelper(page)
      14 | 		snippetName = SnippetsTestHelper.makeUniqueSnippetName()
      15 | 		await helper.navigateToSnippetsAdmin()
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-list.spec.ts:12:7

    Error: locator.click: Target page, context or browser has been closed

       at helpers/SnippetsTestHelper.ts:522

      520 | 		const isChecked = await toggleCheckbox.isChecked().catch(() => false)
      521 | 		if (!isChecked) {
    > 522 | 			await toggleCheckbox.click({ timeout: TIMEOUTS.DEFAULT, force: true })
          | 			                     ^
      523 | 			await expect(toggleCheckbox).toBeChecked({ timeout: TIMEOUTS.DEFAULT })
      524 | 		}
      525 |
        at SnippetsTestHelper.createAndActivateSnippet (/home/runner/work/code-snippets/code-snippets/tests/e2e/helpers/SnippetsTestHelper.ts:522:25)
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-list.spec.ts:17:3

    attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-04ad4-e-snippet-from-bulk-actions-chromium-db-snippets/test-failed-1.png
    ────────────────────────────────────────────────────────────────────────────────────────────────

    attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-04ad4-e-snippet-from-bulk-actions-chromium-db-snippets/video.webm
    ────────────────────────────────────────────────────────────────────────────────────────────────

    Error Context: ../../test-results/code-snippets-list-Code-Sn-04ad4-e-snippet-from-bulk-actions-chromium-db-snippets/error-context.md

    attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-04ad4-e-snippet-from-bulk-actions-chromium-db-snippets/trace.zip
    Usage:

        npx playwright show-trace ../../test-results/code-snippets-list-Code-Sn-04ad4-e-snippet-from-bulk-actions-chromium-db-snippets/trace.zip

    ────────────────────────────────────────────────────────────────────────────────────────────────

Affected Playwright test: all

FAILURE: code-snippets-list.spec.ts:186:6 Can download multiple snippets from bulk actions as a zip archive
[chromium-db-snippets] › code-snippets-list.spec.ts:186:6 › Code Snippets List Page Actions › Can download multiple snippets from bulk actions as a zip archive 

    Test timeout of 60000ms exceeded while running "beforeEach" hook.

      10 | 	const EXPORT_TEST_TIMEOUT_MS = 60000
      11 |
    > 12 | 	test.beforeEach(async ({ page }) => {
         | 	     ^
      13 | 		helper = new SnippetsTestHelper(page)
      14 | 		snippetName = SnippetsTestHelper.makeUniqueSnippetName()
      15 | 		await helper.navigateToSnippetsAdmin()
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-list.spec.ts:12:7

    Error: locator.click: Target page, context or browser has been closed

       at helpers/SnippetsTestHelper.ts:522

      520 | 		const isChecked = await toggleCheckbox.isChecked().catch(() => false)
      521 | 		if (!isChecked) {
    > 522 | 			await toggleCheckbox.click({ timeout: TIMEOUTS.DEFAULT, force: true })
          | 			                     ^
      523 | 			await expect(toggleCheckbox).toBeChecked({ timeout: TIMEOUTS.DEFAULT })
      524 | 		}
      525 |
        at SnippetsTestHelper.createAndActivateSnippet (/home/runner/work/code-snippets/code-snippets/tests/e2e/helpers/SnippetsTestHelper.ts:522:25)
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-list.spec.ts:17:3

    attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-ac58b-lk-actions-as-a-zip-archive-chromium-db-snippets/test-failed-1.png
    ────────────────────────────────────────────────────────────────────────────────────────────────

    attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-ac58b-lk-actions-as-a-zip-archive-chromium-db-snippets/video.webm
    ────────────────────────────────────────────────────────────────────────────────────────────────

    Error Context: ../../test-results/code-snippets-list-Code-Sn-ac58b-lk-actions-as-a-zip-archive-chromium-db-snippets/error-context.md

    attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-ac58b-lk-actions-as-a-zip-archive-chromium-db-snippets/trace.zip
    Usage:

        npx playwright show-trace ../../test-results/code-snippets-list-Code-Sn-ac58b-lk-actions-as-a-zip-archive-chromium-db-snippets/trace.zip

    ────────────────────────────────────────────────────────────────────────────────────────────────

Affected Playwright test: all

FAILURE: code-snippets-list.spec.ts:218:6 Bulk download stays scoped to the current page selection
[chromium-db-snippets] › code-snippets-list.spec.ts:218:6 › Code Snippets List Page Actions › Bulk download stays scoped to the current page selection 

    Test timeout of 60000ms exceeded while running "beforeEach" hook.

      10 | 	const EXPORT_TEST_TIMEOUT_MS = 60000
      11 |
    > 12 | 	test.beforeEach(async ({ page }) => {
         | 	     ^
      13 | 		helper = new SnippetsTestHelper(page)
      14 | 		snippetName = SnippetsTestHelper.makeUniqueSnippetName()
      15 | 		await helper.navigateToSnippetsAdmin()
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-list.spec.ts:12:7

    Error: locator.click: Target page, context or browser has been closed

       at helpers/SnippetsTestHelper.ts:522

      520 | 		const isChecked = await toggleCheckbox.isChecked().catch(() => false)
      521 | 		if (!isChecked) {
    > 522 | 			await toggleCheckbox.click({ timeout: TIMEOUTS.DEFAULT, force: true })
          | 			                     ^
      523 | 			await expect(toggleCheckbox).toBeChecked({ timeout: TIMEOUTS.DEFAULT })
      524 | 		}
      525 |
        at SnippetsTestHelper.createAndActivateSnippet (/home/runner/work/code-snippets/code-snippets/tests/e2e/helpers/SnippetsTestHelper.ts:522:25)
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-list.spec.ts:17:3

    attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-762db--the-current-page-selection-chromium-db-snippets/test-failed-1.png
    ────────────────────────────────────────────────────────────────────────────────────────────────

    attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-762db--the-current-page-selection-chromium-db-snippets/video.webm
    ────────────────────────────────────────────────────────────────────────────────────────────────

    Error Context: ../../test-results/code-snippets-list-Code-Sn-762db--the-current-page-selection-chromium-db-snippets/error-context.md

    attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-762db--the-current-page-selection-chromium-db-snippets/trace.zip
    Usage:

        npx playwright show-trace ../../test-results/code-snippets-list-Code-Sn-762db--the-current-page-selection-chromium-db-snippets/trace.zip

    ────────────────────────────────────────────────────────────────────────────────────────────────

Affected Playwright test: all

FAILURE: code-snippets-list.spec.ts:263:6 Bulk export stays scoped to the current page selection
[chromium-db-snippets] › code-snippets-list.spec.ts:263:6 › Code Snippets List Page Actions › Bulk export stays scoped to the current page selection 

    Test timeout of 60000ms exceeded while running "beforeEach" hook.

      10 | 	const EXPORT_TEST_TIMEOUT_MS = 60000
      11 |
    > 12 | 	test.beforeEach(async ({ page }) => {
         | 	     ^
      13 | 		helper = new SnippetsTestHelper(page)
      14 | 		snippetName = SnippetsTestHelper.makeUniqueSnippetName()
      15 | 		await helper.navigateToSnippetsAdmin()
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-list.spec.ts:12:7

    Error: locator.click: Target page, context or browser has been closed

       at helpers/SnippetsTestHelper.ts:522

      520 | 		const isChecked = await toggleCheckbox.isChecked().catch(() => false)
      521 | 		if (!isChecked) {
    > 522 | 			await toggleCheckbox.click({ timeout: TIMEOUTS.DEFAULT, force: true })
          | 			                     ^
      523 | 			await expect(toggleCheckbox).toBeChecked({ timeout: TIMEOUTS.DEFAULT })
      524 | 		}
      525 |
        at SnippetsTestHelper.createAndActivateSnippet (/home/runner/work/code-snippets/code-snippets/tests/e2e/helpers/SnippetsTestHelper.ts:522:25)
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-list.spec.ts:17:3

    attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-1d429--the-current-page-selection-chromium-db-snippets/test-failed-1.png
    ────────────────────────────────────────────────────────────────────────────────────────────────

    attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-1d429--the-current-page-selection-chromium-db-snippets/video.webm
    ────────────────────────────────────────────────────────────────────────────────────────────────

    Error Context: ../../test-results/code-snippets-list-Code-Sn-1d429--the-current-page-selection-chromium-db-snippets/error-context.md

    attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-1d429--the-current-page-selection-chromium-db-snippets/trace.zip
    Usage:

        npx playwright show-trace ../../test-results/code-snippets-list-Code-Sn-1d429--the-current-page-selection-chromium-db-snippets/trace.zip

    ────────────────────────────────────────────────────────────────────────────────────────────────

Affected Playwright test: all

FAILURE: code-snippets-list.spec.ts:28:6 Can toggle snippet activation from list page
[chromium-db-snippets] › code-snippets-list.spec.ts:28:6 › Code Snippets List Page Actions › Can toggle snippet activation from list page 

    Test timeout of 60000ms exceeded while running "beforeEach" hook.

      10 | 	const EXPORT_TEST_TIMEOUT_MS = 60000
      11 |
    > 12 | 	test.beforeEach(async ({ page }) => {
         | 	     ^
      13 | 		helper = new SnippetsTestHelper(page)
      14 | 		snippetName = SnippetsTestHelper.makeUniqueSnippetName()
      15 | 		await helper.navigateToSnippetsAdmin()
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-list.spec.ts:12:7

    Error: locator.click: Target page, context or browser has been closed

       at helpers/SnippetsTestHelper.ts:522

      520 | 		const isChecked = await toggleCheckbox.isChecked().catch(() => false)
      521 | 		if (!isChecked) {
    > 522 | 			await toggleCheckbox.click({ timeout: TIMEOUTS.DEFAULT, force: true })
          | 			                     ^
      523 | 			await expect(toggleCheckbox).toBeChecked({ timeout: TIMEOUTS.DEFAULT })
      524 | 		}
      525 |
        at SnippetsTestHelper.createAndActivateSnippet (/home/runner/work/code-snippets/code-snippets/tests/e2e/helpers/SnippetsTestHelper.ts:522:25)
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-list.spec.ts:17:3

    attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-23905-t-activation-from-list-page-chromium-db-snippets/test-failed-1.png
    ────────────────────────────────────────────────────────────────────────────────────────────────

    attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-23905-t-activation-from-list-page-chromium-db-snippets/video.webm
    ────────────────────────────────────────────────────────────────────────────────────────────────

    Error Context: ../../test-results/code-snippets-list-Code-Sn-23905-t-activation-from-list-page-chromium-db-snippets/error-context.md

    attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-23905-t-activation-from-list-page-chromium-db-snippets/trace.zip
    Usage:

        npx playwright show-trace ../../test-results/code-snippets-list-Code-Sn-23905-t-activation-from-list-page-chromium-db-snippets/trace.zip

    ────────────────────────────────────────────────────────────────────────────────────────────────

Affected Playwright test: all

FAILURE: code-snippets-list.spec.ts:348:6 Column visibility toggle hides and shows columns in real time
[chromium-db-snippets] › code-snippets-list.spec.ts:348:6 › Manage table Screen Options › Column visibility toggle hides and shows columns in real time 

    Test timeout of 60000ms exceeded while running "beforeEach" hook.

      322 | 	let snippetName: string
      323 |
    > 324 | 	test.beforeEach(async ({ page }) => {
          | 	     ^
      325 | 		helper = new SnippetsTestHelper(page)
      326 | 		snippetName = SnippetsTestHelper.makeUniqueSnippetName('E2E Screen Options')
      327 | 		await helper.createAndActivateSnippet({
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-list.spec.ts:324:7

    Error: locator.click: Target page, context or browser has been closed

       at helpers/SnippetsTestHelper.ts:522

      520 | 		const isChecked = await toggleCheckbox.isChecked().catch(() => false)
      521 | 		if (!isChecked) {
    > 522 | 			await toggleCheckbox.click({ timeout: TIMEOUTS.DEFAULT, force: true })
          | 			                     ^
      523 | 			await expect(toggleCheckbox).toBeChecked({ timeout: TIMEOUTS.DEFAULT })
      524 | 		}
      525 |
        at SnippetsTestHelper.createAndActivateSnippet (/home/runner/work/code-snippets/code-snippets/tests/e2e/helpers/SnippetsTestHelper.ts:522:25)
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-list.spec.ts:327:3

    attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Manage--b1383--shows-columns-in-real-time-chromium-db-snippets/test-failed-1.png
    ────────────────────────────────────────────────────────────────────────────────────────────────

    attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Manage--b1383--shows-columns-in-real-time-chromium-db-snippets/video.webm
    ────────────────────────────────────────────────────────────────────────────────────────────────

    Error Context: ../../test-results/code-snippets-list-Manage--b1383--shows-columns-in-real-time-chromium-db-snippets/error-context.md

    attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Manage--b1383--shows-columns-in-real-time-chromium-db-snippets/trace.zip
    Usage:

        npx playwright show-trace ../../test-results/code-snippets-list-Manage--b1383--shows-columns-in-real-time-chromium-db-snippets/trace.zip

    ────────────────────────────────────────────────────────────────────────────────────────────────

Affected Playwright test: all

FAILURE: code-snippets-list.spec.ts:367:6 Truncation toggle applies and removes the truncation class in real time
[chromium-db-snippets] › code-snippets-list.spec.ts:367:6 › Manage table Screen Options › Truncation toggle applies and removes the truncation class in real time 

    Test timeout of 60000ms exceeded while running "beforeEach" hook.

      322 | 	let snippetName: string
      323 |
    > 324 | 	test.beforeEach(async ({ page }) => {
          | 	     ^
      325 | 		helper = new SnippetsTestHelper(page)
      326 | 		snippetName = SnippetsTestHelper.makeUniqueSnippetName('E2E Screen Options')
      327 | 		await helper.createAndActivateSnippet({
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-list.spec.ts:324:7

    Error: locator.click: Target page, context or browser has been closed

       at helpers/SnippetsTestHelper.ts:522

      520 | 		const isChecked = await toggleCheckbox.isChecked().catch(() => false)
      521 | 		if (!isChecked) {
    > 522 | 			await toggleCheckbox.click({ timeout: TIMEOUTS.DEFAULT, force: true })
          | 			                     ^
      523 | 			await expect(toggleCheckbox).toBeChecked({ timeout: TIMEOUTS.DEFAULT })
      524 | 		}
      525 |
        at SnippetsTestHelper.createAndActivateSnippet (/home/runner/work/code-snippets/code-snippets/tests/e2e/helpers/SnippetsTestHelper.ts:522:25)
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-list.spec.ts:327:3

    attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Manage--d7c48-uncation-class-in-real-time-chromium-db-snippets/test-failed-1.png
    ────────────────────────────────────────────────────────────────────────────────────────────────

    attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Manage--d7c48-uncation-class-in-real-time-chromium-db-snippets/video.webm
    ────────────────────────────────────────────────────────────────────────────────────────────────

    Error Context: ../../test-results/code-snippets-list-Manage--d7c48-uncation-class-in-real-time-chromium-db-snippets/error-context.md

    attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Manage--d7c48-uncation-class-in-real-time-chromium-db-snippets/trace.zip
    Usage:

        npx playwright show-trace ../../test-results/code-snippets-list-Manage--d7c48-uncation-class-in-real-time-chromium-db-snippets/trace.zip

    ────────────────────────────────────────────────────────────────────────────────────────────────

Affected Playwright test: all

FAILURE: code-snippets-list.spec.ts:56:6 Can access edit from list page
[chromium-db-snippets] › code-snippets-list.spec.ts:56:6 › Code Snippets List Page Actions › Can access edit from list page 

    Test timeout of 60000ms exceeded while running "beforeEach" hook.

      10 | 	const EXPORT_TEST_TIMEOUT_MS = 60000
      11 |
    > 12 | 	test.beforeEach(async ({ page }) => {
         | 	     ^
      13 | 		helper = new SnippetsTestHelper(page)
      14 | 		snippetName = SnippetsTestHelper.makeUniqueSnippetName()
      15 | 		await helper.navigateToSnippetsAdmin()
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-list.spec.ts:12:7

    Error: locator.click: Target page, context or browser has been closed

       at helpers/SnippetsTestHelper.ts:522

      520 | 		const isChecked = await toggleCheckbox.isChecked().catch(() => false)
      521 | 		if (!isChecked) {
    > 522 | 			await toggleCheckbox.click({ timeout: TIMEOUTS.DEFAULT, force: true })
          | 			                     ^
      523 | 			await expect(toggleCheckbox).toBeChecked({ timeout: TIMEOUTS.DEFAULT })
      524 | 		}
      525 |
        at SnippetsTestHelper.createAndActivateSnippet (/home/runner/work/code-snippets/code-snippets/tests/e2e/helpers/SnippetsTestHelper.ts:522:25)
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-list.spec.ts:17:3

    attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-fbccc--access-edit-from-list-page-chromium-db-snippets/test-failed-1.png
    ────────────────────────────────────────────────────────────────────────────────────────────────

    attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-fbccc--access-edit-from-list-page-chromium-db-snippets/video.webm
    ────────────────────────────────────────────────────────────────────────────────────────────────

    Error Context: ../../test-results/code-snippets-list-Code-Sn-fbccc--access-edit-from-list-page-chromium-db-snippets/error-context.md

    attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-fbccc--access-edit-from-list-page-chromium-db-snippets/trace.zip
    Usage:

        npx playwright show-trace ../../test-results/code-snippets-list-Code-Sn-fbccc--access-edit-from-list-page-chromium-db-snippets/trace.zip

    ────────────────────────────────────────────────────────────────────────────────────────────────

Affected Playwright test: all

FAILURE: code-snippets-list.spec.ts:67:6 Can clone snippet from list page
[chromium-db-snippets] › code-snippets-list.spec.ts:67:6 › Code Snippets List Page Actions › Can clone snippet from list page 

    Test timeout of 60000ms exceeded while running "beforeEach" hook.

      10 | 	const EXPORT_TEST_TIMEOUT_MS = 60000
      11 |
    > 12 | 	test.beforeEach(async ({ page }) => {
         | 	     ^
      13 | 		helper = new SnippetsTestHelper(page)
      14 | 		snippetName = SnippetsTestHelper.makeUniqueSnippetName()
      15 | 		await helper.navigateToSnippetsAdmin()
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-list.spec.ts:12:7

    Error: locator.click: Target page, context or browser has been closed

       at helpers/SnippetsTestHelper.ts:522

      520 | 		const isChecked = await toggleCheckbox.isChecked().catch(() => false)
      521 | 		if (!isChecked) {
    > 522 | 			await toggleCheckbox.click({ timeout: TIMEOUTS.DEFAULT, force: true })
          | 			                     ^
      523 | 			await expect(toggleCheckbox).toBeChecked({ timeout: TIMEOUTS.DEFAULT })
      524 | 		}
      525 |
        at SnippetsTestHelper.createAndActivateSnippet (/home/runner/work/code-snippets/code-snippets/tests/e2e/helpers/SnippetsTestHelper.ts:522:25)
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-list.spec.ts:17:3

    attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-71aa7-lone-snippet-from-list-page-chromium-db-snippets/test-failed-1.png
    ────────────────────────────────────────────────────────────────────────────────────────────────

    attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-71aa7-lone-snippet-from-list-page-chromium-db-snippets/video.webm
    ────────────────────────────────────────────────────────────────────────────────────────────────

    Error Context: ../../test-results/code-snippets-list-Code-Sn-71aa7-lone-snippet-from-list-page-chromium-db-snippets/error-context.md

    attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-71aa7-lone-snippet-from-list-page-chromium-db-snippets/trace.zip
    Usage:

        npx playwright show-trace ../../test-results/code-snippets-list-Code-Sn-71aa7-lone-snippet-from-list-page-chromium-db-snippets/trace.zip

    ────────────────────────────────────────────────────────────────────────────────────────────────

Affected Playwright test: all

FAILURE: code-snippets-list.spec.ts:88:6 Can delete snippet from list page
[chromium-db-snippets] › code-snippets-list.spec.ts:88:6 › Code Snippets List Page Actions › Can delete snippet from list page 

    Test timeout of 60000ms exceeded while running "beforeEach" hook.

      10 | 	const EXPORT_TEST_TIMEOUT_MS = 60000
      11 |
    > 12 | 	test.beforeEach(async ({ page }) => {
         | 	     ^
      13 | 		helper = new SnippetsTestHelper(page)
      14 | 		snippetName = SnippetsTestHelper.makeUniqueSnippetName()
      15 | 		await helper.navigateToSnippetsAdmin()
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-list.spec.ts:12:7

    Error: locator.click: Target page, context or browser has been closed

       at helpers/SnippetsTestHelper.ts:522

      520 | 		const isChecked = await toggleCheckbox.isChecked().catch(() => false)
      521 | 		if (!isChecked) {
    > 522 | 			await toggleCheckbox.click({ timeout: TIMEOUTS.DEFAULT, force: true })
          | 			                     ^
      523 | 			await expect(toggleCheckbox).toBeChecked({ timeout: TIMEOUTS.DEFAULT })
      524 | 		}
      525 |
        at SnippetsTestHelper.createAndActivateSnippet (/home/runner/work/code-snippets/code-snippets/tests/e2e/helpers/SnippetsTestHelper.ts:522:25)
        at /home/runner/work/code-snippets/code-snippets/tests/e2e/code-snippets-list.spec.ts:17:3

    attachment #1: screenshot (image/png) ──────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-02798-lete-snippet-from-list-page-chromium-db-snippets/test-failed-1.png
    ────────────────────────────────────────────────────────────────────────────────────────────────

    attachment #2: video (video/webm) ──────────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-02798-lete-snippet-from-list-page-chromium-db-snippets/video.webm
    ────────────────────────────────────────────────────────────────────────────────────────────────

    Error Context: ../../test-results/code-snippets-list-Code-Sn-02798-lete-snippet-from-list-page-chromium-db-snippets/error-context.md

    attachment #4: trace (application/zip) ─────────────────────────────────────────────────────────
    ../../test-results/code-snippets-list-Code-Sn-02798-lete-snippet-from-list-page-chromium-db-snippets/trace.zip
    Usage:

        npx playwright show-trace ../../test-results/code-snippets-list-Code-Sn-02798-lete-snippet-from-list-page-chromium-db-snippets/trace.zip

    ────────────────────────────────────────────────────────────────────────────────────────────────

Please review the failing jobs and fix the issues before merging.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

run-tests Trigger automated tests

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants