Files
Toju/e2e
Myx 182828bb1e fix: Bug - Two devices sharing same user says "Shared from your device"
Gate the "Shared from your device" label and the hidden download
affordance on whether this device actually holds the file bytes, not on
whether the current user uploaded it. uploaderPeerId is the user id, so
the old check claimed ownership on every device of the uploader,
blocking view/download on second devices that only synced metadata.

Also include attachment metadata in the account_sync chat-sync-batch so
sibling devices learn about synced attachments at all.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-11 03:29:47 +02:00
..
2026-04-18 21:27:04 +02:00

End-to-End Tests

Playwright suite for the MetoYou / Toju product client. The tests exercise browser flows such as authentication, chat, voice, screen sharing, and settings with reusable page objects and helpers.

Commands

Run these from the repository root:

  • npm run test:e2e runs the full Playwright suite.
  • npm run test:e2e:ui opens Playwright UI mode.
  • npm run test:e2e:debug runs the suite in debug mode.
  • npm run test:e2e:report opens the HTML report in test-results/html-report.

You can also run npx playwright test from e2e/ directly.

Runtime

  • playwright.config.ts starts cd ../toju-app && npx ng serve as the test web server.
  • The suite targets http://localhost:4200.
  • Tests currently run with a single Chromium worker.
  • The browser launches with fake media-device flags and grants microphone/camera permissions.
  • Artifacts are written to ../test-results/artifacts, and the HTML report is written to ../test-results/html-report.

Structure

Path Description
tests/ Test specs grouped by feature area such as auth/, chat/, voice/, screen-share/, and settings/
pages/ Reusable Playwright page objects
helpers/ Test helpers, fake-server utilities, and WebRTC helpers
fixtures/ Shared test fixtures

Notes

  • The suite is product-client focused; it does not currently spin up the marketing website.
  • Keep reusable browser flows in pages/ and cross-test utilities in helpers/.