Files
XC_VM/tests/e2e/.env.example
T
rootandClaude Opus 5 d0458a8eeb test(e2e): drive the admin panel the way an administrator does
The Playwright suite only checked that pages render. It now performs the
administrator's work against a live test panel and asserts the panel's own
data after each step:

- catalogue: a stream category, a bouquet and a reseller package — created,
  renamed / edited, reopened, deleted;
- subscribers: a line with a bouquet (search, edit in the modal, disable /
  enable, ban / unban, delete), a MAG and an Enigma2 device;
- bulk: two lines selected with the header checkbox, disabled and deleted;
- resellers: created with credits, topped up, edited, disabled, deleted;
- block lists: an IP (RFC 5737 address — blocking adds an iptables rule), a
  user agent and an ISP;
- streams: a live stream added with a source and a server, started, running
  with codecs and the Resources column filled in, stopped, renamed, deleted;
- sign-in: a second administrator refused with a wrong password, signing in
  and out — a separate account, because every admin login re-hashes the
  password and ends that account's other sessions.

Records are named `e2e-<run>-…`; a teardown project sweeps whatever a run
leaves behind and nothing else. tools/create-admin.php provisions the
dedicated test administrator on the panel host.

The first runs found three save paths that answered an empty page (fixed in
f7bba5cb, fd13c940, ee2f586a). Against the test panel: 82 passed, 1 skipped
(no series to select).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WDhDajBPziJwjWZcXnh6R
2026-09-16 14:39:39 +00:00

11 lines
520 B
Bash

# Copy to .env (or export in your shell) and fill in for `make e2e`.
# Admin panel base URL INCLUDING the access code (the path segment before /login):
XC_E2E_BASE_URL=http://panel.example.com/ACCESS_CODE
XC_E2E_USER=your_admin_username
XC_E2E_PASS=your_admin_password
# Optional (tests/admin/streams.spec.ts): a LIVE source the panel's server can
# reach, and the server to run the test stream on.
# XC_E2E_STREAM_SOURCE=https://demo.unified-streaming.com/k8s/live/stable/scte35.isml/.m3u8
# XC_E2E_SERVER=Main Server