Skip to content

Latest commit

 

History

History
54 lines (40 loc) · 2.75 KB

File metadata and controls

54 lines (40 loc) · 2.75 KB

E2E Tests

This folder contains black-box Playwright tests for My Own Suite.

The current suite starts a real Docker stack on alternate local ports, drives the live Suite Manager and Homepage browser flows, and tears the stack down again after the run. It does not change app source code or rely on test-only bypasses.

Commands

Run these from the repo root:

  • Install the test dependencies and Chromium browser: npm run e2e:install
  • Run the full E2E suite headless: npm run e2e:full
  • Run the onboarding happy path headless: npm run e2e:onboarding
  • Run the onboarding happy path headed: npm run e2e:onboarding:headed
  • Run the onboarding flow, land on Homepage, and keep the browser open for manual testing: npm run e2e:onboarding:manual
  • Run the Homepage app verification flow headless: npm run e2e:apps
  • Run the Homepage app verification flow headed: npm run e2e:apps:headed

How to think about them:

  • e2e:onboarding tests the first-run setup flow itself.
  • e2e:apps tests the suite after onboarding, focusing on app access and live app surfaces.
  • e2e:full runs both in order during one isolated E2E stack lifecycle.
  • e2e:onboarding:manual is the manual-handoff flow: it finishes onboarding and then pauses on Homepage so you can keep using the browser.

What It Verifies

The onboarding test currently verifies that a fresh local stack can:

  • start cleanly on an isolated E2E Docker Compose project
  • sign in to Suite Manager with the generated owner credentials
  • create the real Vaultwarden owner account
  • detect that account back in Suite Manager
  • import the generated suite credentials into Vaultwarden
  • complete the calendar onboarding step
  • reach Homepage successfully

The Homepage app verification test currently verifies that the same stack can:

  • open Suite Manager back from Homepage
  • open Vaultwarden from Homepage
  • log into Seafile from Homepage with the generated admin credentials
  • reach the live Stirling PDF login surface from Homepage
  • reach the Immich sign-in surface from Homepage
  • reach Radicale with the generated HTTP basic-auth credentials

Notes

  • The E2E stack uses deploy/vps/docker-compose.yml plus deploy/vps/docker-compose.e2e.yml.
  • e2e:full starts that stack once, runs onboarding first, then runs the app verification spec against the same test environment.
  • Caddy is mapped to alternate ports during the test run so the harness does not collide with a normal local stack.
  • Generated credentials are read from deploy/vps/services/suite-manager/.env after the stack starts.
  • The app verification flow also reads the generated Seafile and Radicale credentials from their service env files after the stack starts.
  • If a run fails, Playwright keeps screenshots, videos, and a trace under tests/e2e/test-results.