Autotest was failing because there was an expectation that the plane would fly relatively north from the takeoff point.
This assumption may not be true. We work around it by using a tin can instead of an exclusion polygon so that we breach no matter the direction we fly.
One of the tests just happened to be within acceptance radius of
waypoint 8 - so when we set that as a waypoint we never saw it actually
be our waypoint so the set_waypoint failed
Stop setting MAVProxy stream rates; these are neither here-nor-there now as MAVProxy will only modify its own connection's streamrates now
Stop doing the set-streamrate dance to work around MAVProxy's
set_streamrate algorithms.
Remove useless and misleading set of streamrate in Plane test; we reset
streamrates on the reboot immediately following this set. Considering
the streamrate was never eset this was a good thing.
Adds corrections to enabling fence using aux function.
Correctly test fences statically. Only uploaded fences can be checked using a fence file, so we check those first. Then we add steps to check tin can, max and minm all set the fence as present, as expected.
Plane will support MAV_PROTOCOL_CAPABILITY_MISSION_FENCE, so we assert that it does support it.
To test ceiling and floor, leverage some existing functions for takeoff, change altitude and land. Check for respective breach.
Add a floor breach check to copter.
Autotest: Remove ties to mavlink FENCE_ACTION
Autotest: Add ArduPlane autotest to test ceiling and floor
Adds a test to ensure the vehicle reverts to RTL when breaching a ceiling or floor.
Autotest: Progress the test once we reach takeoff complete and fence enable
Autotest: Use RC_OPTION for Aux Switch functionality
Autotest: Enable fence last
The stack trace is already extremely useful... but mapping back to the
relevant dataflash log is a bit of a pain.
Adding more stuff to this method in the future might be good, too.
This is important when running under Valgrind as the text can be
significantly delayed. wait_statustext times out in simulation time,
whereas mavproxy.expect has a flat 60s timeout