Files

35 lines
1.2 KiB
Markdown

# Browser Tests
These JF12-only integration tests create three temporary NFO movie fixtures,
seed deterministic Multilang data for their real Jellyfin IDs, and exercise
the ordinary web UI with Chromium. They cover proxy translation/fallback and
ordering, genre translation, per-user enablement, pre-cache population,
category-rule precedence, and both settings pages. The runner restores the
complete JF12 `config`, `data`, and `cache` volumes afterward. It refuses any target except
`jellyfin12` on port `8097`.
Install the ignored local dependencies once:
```bash
cd tests/browser
npm install
npx playwright install chromium
```
Run from the repository root with JF12 test-account credentials:
```bash
python3 tools/run_jellyfin12_browser_tests.py \
--base-url http://server.sedomain:8097 \
--username "$JELLYFIN_TEST_USER" \
--password "$JELLYFIN_TEST_PASSWORD" \
--ssh-host server.sedomain \
--state-root /mnt/apps-pool/Docker/Volumes/jellyfin12 \
--confirm-destructive
```
`node_modules`, browser artifacts, credentials, test results, and traces are
ignored. A failed run still restores the server state in a `finally` block; a
restoration hash mismatch intentionally leaves its remote snapshot in `/tmp`
for investigation.