single_point_arrival_pass
Drives from (-18,-121) to (42,-121) and requires waypoint, cycle, and both configured end flags when the route completes.
multi_point_sequence_pass
Traverses (-3,-121):(18,-103):(42,-121) and requires all three waypoint/cycle/end publications with no behavior error.
repeat_once_cycle_pass
Traverses (4,-121):(26,-121) twice with repeat=1; completion must report CYCLE_INDEX=2, not the default single cycle.
repeat_forever_cycle_pass
Uses repeat=forever on (22,-121):(22,-99); at 38 seconds it must have cycled while WPT_DONE and WAYPOINT_END remain false.
dynamic_points_update_pass
Starts with points=empty, posts points=12,-106:42,-121 at five seconds, and requires that runtime-installed route to complete.
newpt_update_pass
Starts with points=empty, appends newpt=x=42,y=-121 at two seconds, and requires the new single-point route to complete.
xpoints_update_pass
Replaces (12,-121):(42,-121) with the same-length route (12,-121):(42,-103) at 11 seconds; completion must occur with -110<ABE_NAV_Y<-96, distinguishing the replacement endpoint from the original one.
empty_start_then_update_pass
Starts with points=empty, posts point=start, and requires immediate completion at the captured ownship position.
wptflag_on_start_pass
Sets wptflag_on_start=true; at three seconds WPT_HIT must be true while route completion remains false.
polygon_points_pass
Supplies polygon=pts={-3,-121:18,-121:42,-121} and requires the exported three-point route to complete normally.
slow_speed_no_arrival_pass
Commands speed=0.35 toward a point 60 meters ahead; at ten seconds it requires 50<WPT_DIST_TO_NEXT<60, -18<ABE_NAV_X<-10, and 0.2<ABE_NAV_SPEED<0.5, proving bounded progress rather than inactivity.
no_points_timeout_fail
Leaves points=empty without an update and requires no waypoint, cycle, or end publication at eight seconds.
malformed_update_fail
Posts points=not_a_point; the live update result must be param_error before the deadline, while the empty route remains incomplete.
bad_xpoints_size_fail
Posts one replacement point against an active two-point route; the live update must return param_error, index zero and a distance above 70 must remain, and direct CTest requires the original two points to be unchanged.
bad_speed_fail
Sets speed=-1; the armed evaluator requires literal helm state MALCONFIG before its deadline, and direct CTest requires rejection of this exact value.
bad_capture_line_fail
Sets capture_line=diagonal; the armed evaluator requires literal MALCONFIG, and direct CTest requires rejection of this exact mode.
bad_capture_radius_fail
Sets capture_radius=-1; the armed evaluator requires literal MALCONFIG, and direct CTest requires rejection of this exact radius.
bad_slip_radius_fail
Sets slip_radius=-1; the armed evaluator requires literal MALCONFIG, and direct CTest requires rejection of this exact radius.
bad_order_fail
Sets order=sideways; the armed evaluator requires literal MALCONFIG, and direct CTest requires rejection of this exact order.
bad_repeat_fail
Sets repeat=-1; the armed evaluator requires literal MALCONFIG, and direct CTest requires rejection of this exact count.
bad_lead_damper_fail
Sets lead_damper=0; the armed evaluator requires literal MALCONFIG, and direct CTest requires rejection of this exact nonpositive damper.
bad_lead_condition_fail
Sets lead_condition=ALLOW_LEAD >; the armed evaluator requires literal MALCONFIG, and direct CTest requires rejection of this exact malformed expression.
bad_end_spd_fail
Sets end_spd=slow_dist=10,stop_dist=20; the armed evaluator requires literal MALCONFIG, and direct CTest requires rejection because stop distance exceeds slowdown distance.
bad_patience_fail
Sets patience=0; the armed evaluator requires literal MALCONFIG, and direct CTest requires rejection outside the accepted [1,99] ratio.
bad_efficiency_measure_fail
Sets efficiency_measure=summary; the armed evaluator requires literal MALCONFIG, and direct CTest requires rejection outside all|off.