Back to catalog

uFldScope

H01 uFldScope Unit

App-level correctness tests for uFldScope. These cases verify appcast table construction, field alias headers, same-key row replacement including blank overwrites, multi-vehicle rows, recovery after invalid scope configuration, missing-field blank cells, and missing-key blank rows.

Stem Mission

Baseline scenario context

The shared uField app stem mission runs a single shoreside MOOS community with one selected app, uTimerScript, pMissionEval, and pLogger. This harness scripts scoped MOOS mail and appcast requests, then checks only uFldScope appcast payloads for table content and recovery behavior.

Examples

Representative runs

Scope Table

Description: Scopes MODE, aliased avg_spd, and trip_dist under key alpha; passes when the exact header is VName,MODE,speed,trip_dist and the sole row is alpha,survey,2.5,12.

Row Replacement

Description: Posts MODE=survey and then MODE=return for key alpha; passes when the sole row is alpha,return with blank speed and trip-distance cells.

Case Matrix

All cases

appcast_table_pass

Scopes MODE, aliased avg_spd, and trip_dist under key alpha; passes when the exact header is VName,MODE,speed,trip_dist and the sole row is alpha,survey,2.5,12.

alias_headers_pass

Renames the three scoped columns to nav_mode, speed, and trip; passes when those are the exact non-key headers and the sole row remains alpha,survey,2.5,12.

update_replaces_same_key_pass

Posts MODE=survey and then MODE=return for key alpha; passes when the sole row is alpha,return with blank speed and trip-distance cells.

multi_vehicle_rows_pass

Posts Alpha in survey mode and Bravo in station mode under the same NAME key definition; passes when the exact two rows are alpha,survey and bravo,station, each with blank speed and trip-distance cells.

invalid_scope_ignored_pass

Places incomplete scope=var=NODE_REPORT,key=NAME before a valid MODE scope; passes when the rendered table has exactly VName,MODE and the sole row alpha,survey, with no column from the invalid definition.

missing_field_blank_cell_pass

Posts a keyed Alpha node report without the scoped MODE field; passes when the exact four-column table contains one Alpha row with all three data cells blank.

missing_key_blank_row_pass

Posts MODE=survey without the scoped NAME key; passes when the exact VName,MODE table contains one row with a blank key and survey in the MODE cell.

later_missing_field_replaces_value_pass

Posts MODE=survey for Alpha and then a second Alpha report without MODE; passes when the exact four-column table retains the Alpha key but replaces all three data cells with blanks.

Source links

Harness README Mission README