Migration
Diese Seite wurde aus der AirSimTech MediaWiki migriert.
Human Verification Tests — Phase 23: FPLN Modification via MCDU-FPLN Page
Overview
This page tracks Phase 23 (FPLN page waypoint insertion, deletion, overfly toggle, TMPY lifecycle, NavDb resolution, DUPLICATE NAMES disambiguation) features that require live human testing on the A320 MCDU display. These items were identified during automated phase verification but cannot be confirmed without a running simulator session. For the consolidated cross-phase test tracker, see Human Verification Tests.
Each test has a status:
- PENDING — Not yet tested
- PASSED — Confirmed working in live MCDU session
- FAILED — Issue found, tracked for gap closure
- DEFERRED — Blocked by missing infrastructure (noted in remarks)
Summary
| Phase |
Feature |
Total Tests |
Passed |
Pending |
Failed |
Deferred |
| Phase 23 |
FPLN Modification (Insert/Delete/Overfly/TMPY/DuplicateNames/Navigation/NavDb) |
23 |
0 |
23 |
0 |
0 |
Phase 23: Waypoint Insertion via Scratchpad (FMOD-01, FMOD-11)
| # |
Feature |
Test Description |
Expected Behaviour |
Status |
Tested |
Remarks |
| 1 |
Insert ident |
Type known ident (e.g. "BPK") in scratchpad, press L3 on FPLN page |
TMPY activates: all legs turn yellow, INSERT*/ERASE labels appear on bottom row. Waypoint appears at correct position in plan. Scratchpad clears. |
PENDING |
— |
NavDb Ask pattern resolves ident via LookupByIdent; single match inserts directly |
| 2 |
Insert lat/lon |
Type "N48W012" in scratchpad, press L3 |
TMPY activates. Lat/lon waypoint inserted at position with ident "N48W012". Lat 48.0, Lon -12.0. |
PENDING |
— |
WaypointInputParser handles N48W012, 48N012W, 4800N/01200W formats |
| 3 |
Insert PBD |
Type "BPK/045/10" in scratchpad, press L3 |
TMPY activates. PBD waypoint inserted at computed position (bearing 045 from BPK, 10 NM distance). Ident shows "BPK045/10". |
PENDING |
— |
Place resolved via NavDb, then great-circle bearing+distance formula applied |
| 4 |
DISC after new waypoint |
Insert waypoint where target position is not already a DISC |
New waypoint is inserted BEFORE the target leg. A discontinuity (DISC) leg is inserted AFTER the new waypoint (between new waypoint and target), matching VB6 InsertToFPLN behaviour: [..., NEW_WPT, DISC, target, ...]. Double DISCs are coalesced by TmpyActor NormalizeDiscontinuities. If the target IS a DISC, no extra DISC is inserted. |
PENDING |
— |
McduActor sends two sequential ApplyTmpyInsert messages (waypoint then DISC); TmpyActor mailbox processes in order |
| 5 |
NOT IN DATA BASE |
Type "ZZZZZ" (unknown ident) in scratchpad, press L3 |
Scratchpad shows "NOT IN DATA BASE" error message. No TMPY activation. |
PENDING |
— |
NavDb LookupByIdent returns 0 matches |
Phase 23: Waypoint Deletion via CLR+LSK (FMOD-04)
| # |
Feature |
Test Description |
Expected Behaviour |
Status |
Tested |
Remarks |
| 6 |
CLR delete |
Press CLR key, then press L2 next to a deletable en-route waypoint |
TMPY activates. Waypoint removed from plan; a DISC is inserted at the deletion point (unless the deleted leg was itself a DISC). Yellow rendering with INSERT*/ERASE labels. |
PENDING |
— |
ClearCommand flag + scratchpad " CLR" detected; DeleteWaypointTmpy dispatched with RawLegIndex; TmpyActor replaces deleted waypoint with DISC |
| 7 |
NOT ALLOWED on ADEP/ADES |
Press CLR, then press LSK next to departure or destination airport |
Scratchpad shows "NOT ALLOWED". No TMPY activation. |
PENDING |
— |
Guard checks leg type against ADEP/ADES/END markers |
Phase 23: Overfly Toggle (FMOD-09, FMOD-10)
| # |
Feature |
Test Description |
Expected Behaviour |
Status |
Tested |
Remarks |
| 8 |
Overfly toggle |
Type "i" in scratchpad, press L3 next to an en-route waypoint |
TMPY activates. Circle marker appears after waypoint ident on FPLN page. IsOverfly toggled via FlightPlanLeg.WithOverfly copy-on-write. |
PENDING |
— |
WaypointInputParser not involved; "i" detected directly in FplnPage.HandleLsk |
| 9 |
Overfly NOT ALLOWED |
Type "i" in scratchpad, press LSK next to ADEP, ADES, or DISC |
Scratchpad shows "NOT ALLOWED". No TMPY activation. |
PENDING |
— |
Guard prevents overfly on pseudo/marker legs |
Phase 23: TMPY Lifecycle (FMOD-05, FMOD-06, FMOD-07)
| # |
Feature |
Test Description |
Expected Behaviour |
Status |
Tested |
Remarks |
| 10 |
TMPY yellow rendering |
Make any FPLN modification (insert/delete/overfly) |
All flight plan legs on FPLN page render in yellow (~y prefix). Title row shows flight number + "TMPY" in yellow (matching VB6 layout). Bottom row shows L6= (yellow). VNAV markers (T/C, T/D, SPDLIM) appear when TmpyComputedFlightPlan is available. |
PENDING |
— |
McduFplnLegBuilder prefers TmpyComputedFlightPlan (with VNAV) over raw TmpyFlightPlan; falls back to raw legs if computed plan not yet available |
| 11 |
Undo |
Make a TMPY modification, press L6 (UNDO) |
Last modification reverts. Plan returns to state before last change. Single-step undo only (VB6 behaviour). |
PENDING |
— |
TmpyActor._undoSlot stores one-step backup |
| 12 |
INSERT (accept TMPY) |
After TMPY modification, press R6 (INSERT*) |
TMPY accepted into active plan via CopyFromSecondary. FPLN page returns to white/green rendering without flicker. INSERT*/ERASE labels disappear. VNAV markers preserved from first render (TMPY ComputedFlightPlan promoted to active). |
PENDING |
— |
McduActor caches TMPY plan immediately before sending CopyFromSecondary; promotes _tmpyComputedFp to _latestComputedFp for seamless first render |
| 13 |
ERASE (discard TMPY) |
After TMPY modification, press R6 (ERASE) |
TMPY discarded. Plan reverts to original state before any modifications. Green rendering restored. |
PENDING |
— |
TmpyActor publishes TmpyErased with base plan |
| 14 |
Trajectory recompute on TMPY |
Make a TMPY modification and observe trajectory profile (side view and map view) |
Trajectory profile updates immediately to reflect TMPY plan. KernelActor receives RequestTrajectoryRecompute with TMPY plan override. Diagnostic forms (Side View, Map View, RAW FPLN, Computed FPLN) auto-switch to TMPY view via SlideToggle; toggling one form syncs all others. |
PENDING |
— |
Per D-08: each TmpyPlanUpdated triggers recomputation; KernelActor builds TmpyComputedFlightPlanResult; DiagnosticTmpyToggleChanged syncs forms |
Phase 23: DUPLICATE NAMES Disambiguation (FMOD-03)
| # |
Feature |
Test Description |
Expected Behaviour |
Status |
Tested |
Remarks |
| 15 |
Duplicate names page |
Type a 3-letter VOR/waypoint ident with multiple matches (e.g. common navaid), press L3 |
DUPLICATE NAMES page appears with up to 6 matches per page. Each match shows: blue selectable ident on left, distance from aircraft in NM, lat/lon in DDN/DDDE format, frequency if navaid. Matches sorted by distance ascending. |
PENDING |
— |
VB6 CreateDUPLICATENAMES layout; IdentLookupMatch carries ident/lat/lon/freq/sourceType |
| 16 |
Duplicate names selection |
On DUPLICATE NAMES page, press L1-L6 to select a match |
Selected waypoint inserted into TMPY at the stored afterLegIndex. FPLN page returns with TMPY active showing the inserted waypoint. |
PENDING |
— |
Selection routes through InsertWaypointFromScratchpad pipeline |
Phase 23: FPLN Page Navigation and Display (Post-Phase Fixes)
| # |
Feature |
Test Description |
Expected Behaviour |
Status |
Tested |
Remarks |
| 17 |
Cursor key scrolling |
On FPLN page with >5 legs, press cursor up (key 14) and cursor down (key 15) |
FPLN page scrolls circularly. Up-key scrolls list down (higher indices), down-key scrolls up (inverted, VB6 parity). Wraps around from last leg to first. No scroll when plan has fewer than 5 legs. |
PENDING |
— |
ScrollFplnCursor uses modular arithmetic for circular wrap |
| 18 |
FPLN title row |
Navigate to FPLN page |
Title row shows flight number (from FlightPlan) followed by page content. No spurious "F-PLN" prefix. Matches VB6 ProcessFPLN title layout. |
PENDING |
— |
VB6 parity fix: removed duplicate F-PLN, added FlightNumber from ctx.FlightPlan |
| 19 |
DEST row colors |
View FPLN page bottom row (row 12-13) |
DEST label row and data row (ADES ident, UTC, DIST, EFOB) render in white, not green. Label row uses small font. |
PENDING |
— |
Fixed: ~w (white) instead of ~g (green); ADES ident uses large font, UTC/DIST/EFOB use small font |
| 20 |
Scratchpad to external MCDU |
Type text in scratchpad, observe external MCDU software display |
Scratchpad content appears on external MCDU display in real-time. Clear operation sends "a" prefix to reset. CPT uses sub-address 02257, FO uses 02356 on register 5339. |
PENDING |
— |
McduActor.SendScratchpad sends via INET register 5339 after each render |
| 21 |
FPLN page reset on navigation |
Press F-PLN hardkey from any other page |
FPLN page opens with scroll position reset to top (_fplnTopIndex = 0). Always shows first legs of plan regardless of previous scroll state. |
PENDING |
— |
NavigateToPage resets _fplnTopIndex on McduPageType.Fpln |
Phase 23: NavDb Coordinate Parsing (Post-Phase Fixes)
| # |
Feature |
Test Description |
Expected Behaviour |
Status |
Tested |
Remarks |
| 22 |
Navaid coordinates |
Insert a VOR/NDB navaid via scratchpad on FPLN page, check map view position |
Navaid appears at correct geographic position. Coordinates parsed via ParseSignedDecimalCoord (signed decimal format "+50,033310"), not DMS. |
PENDING |
— |
Fix: Navaid lat/lon uses same signed decimal format as Airport table, not DMS |
| 23 |
Waypoint coordinates |
Insert a waypoint via scratchpad on FPLN page, check map view position |
Waypoint appears at correct geographic position. Coordinates parsed via ParseSignedDecimalCoord. |
PENDING |
— |
Fix: Waypoint lat/lon also uses signed decimal format, same as Navaid/Airport |