Skip to content

Add Playwright chat E2E coverage - #166

Merged
llbbl merged 4 commits into
masterfrom
feature/issue-117-playwright-e2e
Sep 13, 2026
Merged

llbbl merged 4 commits into
masterfrom
feature/issue-117-playwright-e2e

Conversation

@llbbl

@llbbl llbbl commented Sep 13, 2026

Copy link
Copy Markdown
Owner

Summary

  • Add Chromium Playwright E2E coverage for the XML, JSON, HTML, Vue, and Svelte chat implementations.
  • Add an isolated E2E stack with SQLite, cache cleanup, WebSocket teardown, and axe serious/critical accessibility checks.
  • Document local E2E usage and add PR CI with Playwright report upload on failure.

Changes

Tests and Tooling

  • playwright.config.ts: Configure Chromium E2E runs with CodeIgniter and Vite web servers.
  • e2e/: Add shared chat scenario helpers, global setup, and one spec for each frontend route.
  • tests/_support/Database/Seeds/E2eSeeder.php: Seed the isolated E2E login user.
  • package.json / pnpm-lock.yaml: Add Playwright, axe, and E2E scripts.

CI and Docs

  • .github/workflows/e2e.yml: Run the browser suite on pull requests to master.
  • docs/testing.md: Document browser E2E setup, commands, artifacts, and spec conventions.
  • .gitignore: Ignore Playwright artifacts and generated WebSocket token files.

App Compatibility and Accessibility

  • app/Views/chat/: Add language metadata and labels for legacy chat forms.
  • src/vue/App.vue / src/svelte/App.svelte / src/css/chat.scss / src/css/chat.css: Adjust contrast issues found by axe.
  • app/Commands/ChatWebSocketServer.php: Align inherited command property declarations with the framework base class.
  • src/js/chat.js: Request JSON from the post endpoint consistently.

Test plan

  • composer test:all - 173 tests, 539 assertions
  • composer test:integration:websocket - 1 test, 8 assertions
  • composer analyse
  • composer cs-check
  • composer validate --strict
  • composer audit
  • pnpm audit
  • pnpm build
  • pnpm e2e - 5 passed
  • git diff --check

Closes #117

@socket-security

socket-security Bot commented Sep 13, 2026 •

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Addednpm/​@​axe-core/​playwright@​4.13.01001001009970
Addednpm/​@​playwright/​test@​1.63.010010010099100

View full report

@llbbl
llbbl merged commit 833d879 into master Sep 13, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add Playwright E2E tests across all FE implementations

1 participant