platform-core/tests/demo/README.md
ValueOn AG 7061dd4303
All checks were successful
Deploy Plattform-Core (Int) / test (push) Successful in 1m3s
Deploy Plattform-Core (Int) / deploy (push) Successful in 9s
ui generic rendering - base
2026-06-10 16:32:45 +02:00

1.2 KiB

Demo Test Suite

Automated tests for the investor demo configuration.

SAFETY RULE (critical)

Tests in this suite MUST be strictly read-only towards the database.

Pytest runs against the real dev database (there is no separate test DB). Tests must NEVER load or remove demo configs — neither via direct module calls (cfg.load() / cfg.remove()) nor via HTTP calls to /api/admin/demo-config/<code>/load|remove (not even to assert 401/403).

Background: on 2026-06-09 a demo test reloaded investor-demo-2026 during a pytest run. The demo mandates (HappyLife AG, Alpina Treuhand AG) were deleted and recreated with new UUIDs, orphaning all real feature data (trustee accounting incl. RMA connection, workflows, documents). The data had to be recovered by remapping ~15'000 rows across 9 databases.

Demo configs are loaded/removed manually via Admin UI → /admin/demo-config.

Run

cd platform-core/
pytest tests/demo/ -v

Test files

File What it tests
test_demo_api.py Config auto-discovery (read-only), list endpoint rejects unauthenticated
test_demo_data_files.py Demo data files exist in demoData/ (filesystem only)