-
Notifications
You must be signed in to change notification settings - Fork 0
Testing
Jeremy Peterson edited this page Feb 26, 2026
·
2 revisions
Testing guidelines for PERTI development.
Before submitting changes, verify:
- Login via VATSIM Connect works
- Session persists across pages
- Logout clears session
- JATOC loads without login
- NOD loads without login
- Data displays correctly
- GDT loads and displays data
- Route Plotter renders map
- Splits configuration works
- Splits strata filter (low/high/superhigh) toggles map sectors
- Splits scheduled configurations activate/deactivate correctly
- TMI Publish page loads and Discord integration works
- TMR (review reports) CRUD operations function
- Plan page loads all 16 parallel API calls
- Demand charts render with correct data
- Playbook page loads play catalog
- Source filter pills (All/FAA/DCC/ECFMP/CANOC) filter correctly
- Search box filters plays by name/description
- Category pills render from distinct categories
- Legacy toggle shows/hides archived plays
- Play detail panel shows routes with origin/dest/route string
- Map renders play routes with correct geometry
- Create play modal opens with all fields
- Bulk paste parses ECFMP/CANOC route format
- Save play creates/updates play and routes
- Delete play removes play (with confirmation)
- Duplicate play creates copy with
_MODIFIEDsuffix - Shareable link
?play=NAMEloads correct play - Playbook changelog shows audit trail
- Route remarks display and save correctly
- NOD facility flow layers render on map
- NOD TMI cards display active programs
- TMI compliance report generates correctly
- Transparency page shows accurate infrastructure data
-
i18n.js,index.js(locale loader), anden-US.jsonload in order -
PERTII18n.t()resolves keys correctly -
PERTIDialogmodals show translated text - Locale auto-detection works (URL param → localStorage → navigator.language)
- No
[missing: key.name]strings visible in UI
- Responses return valid JSON
- Error handling works
- Authentication enforced where required
-
PERTI_MYSQL_ONLYendpoints don't use Azure SQL connections
Test across supported browsers:
- Chrome 90+
- Firefox 88+
- Safari 14+
- Edge 90+
Key features requiring WebGL:
- Route Plotter (MapLibre GL)
- NOD Dashboard (MapLibre GL with facility flow layers)
- Demand Analysis (MapLibre GL overlays)
Test migrations on a staging database before production.
mysqldump -u user -p perti_site > backup.sql
mysql -u user -p perti_site < database/migrations/schema/NNN_migration.sqlsqlcmd -S server.database.windows.net -d VATSIM_ADL -U admin -P 'pass' \
-i adl/migrations/core/NNN_migration.sqlpsql -h server.postgres.database.azure.com -d vatcscc_gis -U admin \
-f database/migrations/postgis/NNN_migration.sqlBefore applying the PERTI_MYSQL_ONLY flag to an endpoint:
# Grep for Azure SQL connection usage
grep -n "conn_adl\|conn_tmi\|conn_swim\|conn_ref\|conn_gis" api/path/to/endpoint.phpIf any matches found, do NOT apply the flag.
Key endpoints to benchmark:
- Plan page APIs (16 parallel calls) — target < 500ms total
- ADL current flights — target < 2s
- TMI active programs — target < 1s
- Contributing - Contribution process
- Code Style - Coding standards
PERTI - Virtual Air Traffic Control System Command Center Production Site | GitHub | Report Issue
Last updated: 2026-02-25
Home Navigation Helper (NEW)
Comprehensive Guides
Getting Started
Architecture
Algorithms & Processing
- Algorithms Overview
- Algorithm ETA Calculation
- Algorithm Trajectory Tiering
- Algorithm Zone Detection
- Algorithm Route Parsing
- Algorithm Data Refresh
SWIM API (Public/External)
- SWIM API
- SWIM Routes API
- SWIM Playbook API
- SWIM Route Data Integration
- Building Route Processing
- CDM Connector Guide
PERTI API (Internal)
Features
Walkthroughs
Operations
Development
Analysis
- Analysis (index)
- ETA Accuracy (Jan-Mar 2026)
Reference