Peter Barker
cccec5c21c
autotest: add test for FRSkyD battery
2021-08-11 15:17:43 +10:00
Peter Barker
abb6521127
Revert "autotest: use SIM_STATE (common.xml) instead of SIMSTATE (ardupilotmega.xml)"
...
This reverts commit 540a56adb8
.
Polling this message caused issues on reboot - shouldn't be a problem
but is.
Retrying that showed that the Tracker GUIDED test failed reliably due to
a yaw problem.
2021-08-07 16:18:05 +10:00
Peter Barker
540a56adb8
autotest: use SIM_STATE (common.xml) instead of SIMSTATE (ardupilotmega.xml)
...
It is a useful superset
2021-08-05 18:35:11 +10:00
Peter Barker
27fcb3a100
autotest: fix simstate error message
2021-08-05 18:35:11 +10:00
Peter Barker
ca35d01baa
autotest: move upload_simple_relhome_mission up
2021-08-05 10:38:03 +10:00
Josh Henderson
162b3b70cf
Autotest: use MAV_POS_TARGET_TYPE_MASK, remove POS_TYPE_MASK_FORCE
2021-08-03 12:48:38 +10:00
Andrew Tridgell
e6f15ed6c0
autotest: cope with WriteStreaming() in doc tests
2021-08-03 10:23:36 +10:00
Andrew Tridgell
a0da76243d
autotest: reboot after AHRS_ORIENTATION test
...
the EKF can be left very unhappy by this test
2021-07-31 10:01:14 +10:00
Peter Barker
2ae483cee0
autotest: stop uploading artifacts to autotest server
...
github action's CI is good at this
2021-07-30 11:32:59 +10:00
Peter Barker
7929122f49
autotest: improve AHRS trim test
2021-07-28 17:20:28 +10:00
Peter Barker
909decc5be
autotest: move wait_attitude up to common.py
2021-07-28 17:20:28 +10:00
Peter Barker
da3ff2c142
autotest: add test for live change of AHRS orientation
2021-07-27 17:28:09 +10:00
Peter Barker
04ddc9de03
autotest: correct order of progress vs action in set-param
2021-07-27 16:51:48 +10:00
Peter Barker
e1884bcd6e
autotest: run dumpstack/dumpcore on stuck SITL process
2021-07-27 16:51:48 +10:00
Peter Barker
eff4bc4cfb
autotest: drain pexpects in set_parameters loop
...
This loop doesn't self.mav.recv(), so the idle loop isn't called, so the
pexpects aren't drained. That can cause ArduPilot to block on stderr if
it is trying to print a stacktrace, for example
2021-07-21 17:05:17 +10:00
Peter Barker
43a4ea734f
autotest: add some diagnostics for missing processes
2021-07-21 15:50:50 +10:00
Peter Barker
571ae46b0f
Tools: split yaw-vehicle-for-mount-roi test out
2021-07-19 18:16:13 +10:00
Andrew Tridgell
618fa156c7
autotest: added --replay option to autotest
...
make for easy creation of EKF replay logs
2021-07-16 21:13:53 +10:00
Peter Barker
743ed05367
autotest: detect ap-*.core as we do core.* files
2021-07-08 15:46:07 +10:00
Andrew Tridgell
3a7075fc65
autotest: fixed config error loop test
2021-07-08 07:56:51 +10:00
Peter Barker
c1a5ca6060
autotest: add test to ensure we get a log if arming is forced
2021-07-04 08:54:54 +10:00
Peter Barker
85f36f957d
autotest: add force option to arm_vehicle
2021-07-04 08:54:54 +10:00
Peter Barker
4c173e01ef
autotest: increase number of parameter retries
...
sets were failing just after we uploaded very large numbers of
parameters. I'm guessing the parameter queue in ArduPilot is still
full.
2021-06-24 17:58:31 +10:00
Peter Barker
4bb91d1ec1
autotest: shift where we print which attempt we are doing
2021-06-24 17:58:31 +10:00
Peter Barker
b58e7bedaa
autotest: correct placement of not-alive-after-test message
...
This was misplaced with bad conflict resolution
2021-06-24 08:34:06 +10:00
Peter Barker
d6f619fb1a
autotest: emit 'attempt 1/3' when retrying set_parameter
...
Also reterm things in terms of attempts rather than retries
2021-06-24 08:30:03 +10:00
Peter Barker
99c7d3aabc
autotest: ensure no stray message listeners after test
2021-06-23 21:55:32 +10:00
Peter Barker
6a8ca9e45b
autotest: timeout in wallclock time in config error loop test
...
SYSTEM_TIME is not sent in config error loop
2021-06-23 21:55:32 +10:00
Peter Barker
210818cd6e
autotest: let arming failure messages get spit out
2021-06-17 21:01:23 +10:00
Peter Barker
cea0d7c971
autotest: move autotest tlog files into buildlogs directory
2021-06-11 22:14:11 +10:00
Peter Barker
14b2af84ab
autotest: break out a home_relative_loc_ne for getting a home-rel loc
2021-06-11 16:59:51 +10:00
Peter Barker
96e14d470a
autotest: retry SITL connect many times while running under GDB
...
Allows for easier debugging under gdb when checking startup code
2021-06-11 11:15:58 +10:00
Peter Barker
0b517cfc57
autotest: start GDB in tui mode by default
2021-06-10 20:52:48 +10:00
Peter Barker
79de738266
autotest: wait for a few seconds for arm-failure messages to appear
...
If prearms never come true then we try to arm the vehicle so it tells us
what is wrong. Since we no longer push statustexts hard, we have to
wait for the reasons to come out at normal clocked rates.
2021-06-09 14:13:54 +10:00
Peter Barker
6af6d2fc2a
autotest: add a progress message for looking for a message in a log
2021-06-09 14:13:31 +10:00
Peter Barker
6944ef6af1
autotest: fly each working Helicopter frame
2021-06-09 12:15:42 +10:00
yaapu
b14dcf1df5
Tools:autotest: updated FRSky SPort test to use new 2 byte data IDs
2021-06-02 17:33:15 +10:00
Peter Barker
8925c2830b
autotest: check fence upload/download when creating from locs
2021-06-01 15:54:59 +10:00
Peter Barker
3eb164fb6a
autotest: move script helper functions from rover to common
2021-05-14 13:21:36 +10:00
Peter Barker
3d562046da
autotest: add accuracy option to guided_achieve_heading
2021-05-14 13:21:36 +10:00
Peter Barker
9965f1a31d
autotest: add some helpers for local-position movement
2021-05-12 13:01:50 +10:00
Peter Barker
765889b827
autotest: don't send statustext during exception
...
During an exception we don't want to be trying to print these
2021-05-07 14:21:44 +10:00
Peter Barker
f78cf73726
autotest: don't fail completely if ArduPilot process dies
2021-05-07 12:22:11 +10:00
Peter Barker
9a13b5c9b6
autotest: add test for auxfunc triggering via script
2021-05-05 07:13:18 +10:00
Peter Barker
8fdfdebe55
autotest: pass sitl_commandline_customised up the context stack
...
We're running tests on the Callisto frame when we shouldn't in Copter as
the information was lost in nested Contexts.
We can only reset the SITL commandline at an actual Test level - if a
defaults file has been used then it is unclear as to what the state of
any parameter is in storage as we move between contexts
2021-05-01 17:22:36 +10:00
Peter Barker
c7c4c17c68
autotest: improve change_mode debug
2021-05-01 13:25:13 +10:00
Peter Barker
fc426e01c2
autotest: stop using start_test for things that aren't actually tests
...
start_test should only be used for top-level tests, not parts of
top-level tests
2021-04-28 13:53:46 +10:00
Peter Barker
30e8160aa1
autotest: sort logs before moving
...
Makes it easier to find last log in output.
Also removing pointless lamdaing of some functions
2021-04-21 13:16:24 +10:00
Peter Barker
0ee0228883
autotest: fix flapping fly-home-land-and-disarm
...
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
2021-04-20 23:04:24 +10:00
Peter Barker
8643322f06
autotest: correct string we expect from MAVProxy
...
Was APM: now AP:
2021-04-20 14:08:12 +10:00
Peter Barker
c12d1938c2
autotest: add a test for button change for changing modes
2021-04-19 14:27:45 +10:00
Peter Barker
dfa342a79f
autotest: correct rc-values-good debug
2021-04-03 08:59:14 +11:00
Peter Barker
d2c00f7b26
autotest: ensure RC thread is killed after each run_test
...
Every run_test starts a thread. del is not being called. So clean it
up in the caller
2021-04-01 11:00:54 +11:00
Peter Barker
ba972b6b46
autotest: fix --map option
2021-03-31 16:30:25 +11:00
Peter Barker
e8f96efe72
autotest: wait for stats initialisation before rebooting
...
If the RTC time we reset parameters (STAT_RESET) is zero then we reset all parameters.
In SITL we only set that time if we see a GPS due to the AP_RTC RTC_TYPES parameter default bitmask value of 1
So if you reboot SITL fast enough while STAT_RESET is zero you can see that STAT_BOOTCNT does not increase. Easily reproducible in SITL; start with -w and type reboot in several times before SITL sees the GPS come up and you can see STAT_BOOTCNT doesn't increase.
Fix is to ensure STAT_RESET is non-zero before rebooting.
2021-03-31 13:33:39 +11:00
Peter Barker
240e2d6b28
autotest: correct pexpect handling of supplementary programs
2021-03-24 23:10:27 +11:00
Peter Barker
ae7b21843e
autotest: remove useless mavproxy set heartbeat directive
...
This has never actually worked:
2021-03-24T04:53:03.7594996Z AT-0040.3: Starting MAVProxy
2021-03-24T04:53:03.7595674Z PYTHONPATH: /__w/ardupilot/ardupilot/Tools/mavproxy_modules
2021-03-24T04:53:05.8106006Z Running: "mavproxy.py" "--master" "tcp:127.0.0.1:5762" "--aircraft" "test.ArduCopter" "--sitl=127.0.0.1:5502" "--streamrate=5" "--cmd="set heartbeat 8"" "--target-system=1" "--target-component=1" "--quadcopter" "--default-modules" "misc,terrain,wp,rally,fence,param,arm,mode,rc,cmdlong,output"
2021-03-24T04:53:05.8108569Z ERROR LOADING MAVNATIVE - falling back to python implementation
2021-03-24T04:53:05.8109340Z Connect tcp:127.0.0.1:5762 source_system=255
2021-03-24T04:53:05.8109962Z no script test.ArduCopter/mavinit.scr
2021-03-24T04:53:05.8110739Z Unknown command '"set heartbeat 8"'
2021-03-24 23:10:06 +11:00
Peter Barker
8bf1ac0347
autotest: fix and tidy the log download test
...
We were requesting past the end of the file
2021-03-24 14:46:48 +11:00
Peter Barker
fdbbcaa506
autotest: bump default speedups for several vehicles
...
These tests seem to run stabley on my box with essentially no speedup
limit
2021-03-24 14:46:48 +11:00
Peter Barker
6f2de67ead
autotest: augment delay_sim_time debug
2021-03-24 14:46:48 +11:00
Peter Barker
d9501766c7
autotest: augment delay_sim_time debug
2021-03-24 08:57:03 +11:00
Peter Barker
073a9e3390
autotest: fix frsky passthrough test
...
Mainly through polling much faster, but also allowing for statustexts in
different orders from frsky/statustext
2021-03-22 18:08:44 +11:00
Peter Barker
e567cca230
autotest: drain mav before receiving system_time in get_sim_time
2021-03-19 09:46:45 +11:00
Peter Barker
8901efd69d
autotest: start and stop MAVProxy for alttype and surface tracking tests
...
autotest doesn't currently supply terrain tiles, so MAVProxy must be
started
2021-03-19 09:46:45 +11:00
Peter Barker
19e5351631
autotest: start and stop mavproxy for setpoint tests
...
These work in terrain frame - but autotest won't satisfy terrain
requests yet
2021-03-19 09:46:45 +11:00
Peter Barker
462ac255a3
autotest: start MAVProxy only as needed for testing
2021-03-19 09:46:45 +11:00
Peter Barker
4269cf52a2
autotest: split application of default parameters and defaultfile parameters
...
ensures all vehicles have LOG_DISARMED
2021-03-19 09:46:45 +11:00
Peter Barker
dbee2e5d71
autotest: ignore type=0 heartbeat packets on SITL start
...
Until ArduCopter allocates its motors backend we emit a generic type,
for which there is no mode map in pymavlink.
So don't consider the reboot complete until we see a valid heartbeat.
2021-03-19 09:46:45 +11:00
yaapu
ec15614e11
Tools:autotest: added frsky passthrough autotest for terrain message frame 0x500B
2021-03-18 21:43:48 +11:00
Peter Barker
21c124ab47
autotest: tidy set_parameters
...
Remove commented code, add more to the verbose option
2021-03-18 11:29:45 +11:00
Peter Barker
da52e5d08c
autotest: set SYSID_MYGCS in tests which need it
...
This was still relying on heartbeats coming from MAVProxy. As speedup
increased those heartbeats may not come fast enough - and they really
should be coming from autotest as that's who's doing the commanding.
autotest: set SYSID_MYGCS in AFS test
autotest: set SYSID_MYGCS before setGCSfailsafe
2021-03-17 16:02:45 +11:00
Peter Barker
f7d8994ce1
autotest: move assert_mission_count up, use it
2021-03-17 00:23:05 +11:00
Peter Barker
0c7f3d20a4
autotest: fix attitude test
...
autotest: add a get_messages_frame method
Attempts to get a set of messages as close as reasonable in time.
2021-03-16 14:19:44 +11:00
Peter Barker
4b3adb806c
autotest: add test for tailsitter throttle
2021-03-16 10:41:44 +11:00
yaapu
3bfa07d35a
Tools:autotest, frsky passthrough fix for long status text message test
2021-03-13 00:14:27 +11:00
bugobliterator
5074b6d336
autotest: add test case for GPS ordering
...
also fix flake8 issues
2021-03-12 16:32:36 +09:00
bugobliterator
48277b43e4
Tools: add autotest for checking GPS ordering
2021-03-12 16:32:36 +09:00
Peter Barker
f78d7c3b25
autotest: add option to not check current wp after set_current_wp
...
Sometimes a waypoint is set which we'll never emit as our current
waypoint (e.g. a JUMP)
2021-03-10 09:12:39 +11:00
Peter Barker
3ddffdab9b
autotest: correct wait_current_waypoint timeout behaviour
2021-03-10 09:12:39 +11:00
Peter Barker
425ab1358a
autotest: tidy streamrate handling
...
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.
2021-03-05 21:34:58 +11:00
James O'Shannessy
fa7be629e5
AutoTest: Make fence tests flake8 compliant
2021-03-05 14:52:46 +11:00
James O'Shannessy
01b27bdb61
AutoTest: revert change that breaks quadplane
2021-03-05 14:52:46 +11:00
James O'Shannessy
8545715837
AutoTest: Add Static Fence Tests for unallowed arming when breaching geofence
2021-03-05 14:52:46 +11:00
James O'Shannessy
b2346ef6df
AutoTest: Adds additional tests to ArduCopter to test autoenable and floor
...
Adds tests for:
* Testing auto-enable disabled (when no autoenabling of the fence is required)
* Test auto-enabled always after takeoff (when takeoff complete condition met)
* Test auto-enabled disable floor only (when land sequence begins)
* Test auto- on arm/disarm (when vehicle is armed/disarmed)
* Tests ability to land when fence is breached
2021-03-05 14:52:46 +11:00
James O'Shannessy
a3efc9ad98
AutoTest: Fix MAVlite test allowing plane fence to be enabled
2021-03-05 14:52:46 +11:00
James O'Shannessy
47e76a1807
AutoTest: Move fence enable/disable to common location
2021-03-05 14:52:46 +11:00
Paul Riseborough
d52594c576
Tools: Fix set_home autotest
...
Don't try to get home until EKF has passed alignment and GPs checks.
Use a more realistic lat/lon offset threshold
2021-03-05 12:10:01 +11:00
Peter Barker
4aed767fe9
autotest: add test for MAV_CMD_DO_SET_MISSION_CURRENT
2021-03-04 11:59:33 +11:00
Peter Barker
cc83562add
autotest: tidy fence handling
2021-03-02 16:54:06 +11:00
Peter Barker
4d2cf8c95b
AP_Frsky_SPort: correct handling of RPM sensor data
...
Nails support down to just two RPM sensors for the time being.
Simplifies things (there was an issue here when I corrected RPM-in-SITL)
2021-03-02 15:41:44 +11:00
Peter Barker
eb499ff731
autotest: improve frsky SPort test
...
- reduces verbosity as we only check the remaining items when new data
received
- reduces repoll interval and explains why we need to re-poll
2021-03-02 15:41:44 +11:00
Peter Barker
7b251b6fd4
autotest: add diagnostics for frsky tests
2021-03-02 15:41:44 +11:00
Peter Barker
2671a2f71f
autotest: fix up FRSky tests for running under Valgrind
2021-03-02 15:41:44 +11:00
Peter Barker
360512f6b0
autotest: preserve commandline customisations on reboot under valgrind
2021-03-02 15:41:44 +11:00
Peter Barker
5d1e105534
autotest: allow more time for mission upload and download
...
We upload some rather large missions....
2021-03-02 14:24:36 +11:00
Peter Barker
10007e2e42
autotest: load missions natively rather than using MAVProxy
2021-03-02 14:24:36 +11:00
Peter Barker
993d87469c
autotest: move mission upload functions from rover to common
2021-03-02 14:24:36 +11:00
Peter Barker
34a52e9cfe
autotest: use wait_statustext in place of mavproxy.expect for autorotate test
2021-03-02 13:34:09 +11:00
Peter Barker
0daa1a63d3
autotest: remove pointless fetch_parameters call
...
And the entire method, replace with equivalent test
2021-03-01 17:27:52 +11:00
nkruzan
3e0f9ab4e7
Tools:autotest\common.py fix text typo
2021-03-01 15:15:38 +11:00
Peter Barker
61138f342a
autotest: do not time out receiving of heartbeat if running gdb
...
pausing indefinitely when running GDB is OK.
2021-03-01 13:44:23 +11:00
Peter Barker
9d681eecc4
autotest: move to state outside when we leave log structure
...
No vertical whitespace allowed in the structures...
We concatenate all of the LogStructure files; without this we remain in
state_inside and try to parse every line in the concatenation as if it
were a log structure definition
2021-02-23 12:36:33 +11:00
Peter Barker
9120882e9e
autotest: print name of open dataflash log when test exception caught
...
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.
2021-02-21 21:35:35 +11:00
Peter Barker
148e2e751f
autotest: add set_current_waypoint
2021-02-19 12:25:40 +11:00
Peter Barker
b7044d3708
autotest: remove use of global expect_list
2021-02-18 18:18:30 +11:00
Peter Barker
2d17f019b6
autotest: remove pointless manipulation of expect list
...
start_sitl and start_mavproxy already do this stuff
2021-02-18 18:18:30 +11:00
Peter Barker
dcc04ccd09
autotest: stop using MAVProxy to change modes
2021-02-18 17:38:52 +11:00
Peter Barker
2c1df16442
autotest: increase button message timeout to allow for Valgrind speed
2021-02-18 17:04:16 +11:00
Peter Barker
ad06a616b8
autotest: adjust for low log transfer rate under valgrind
2021-02-18 17:04:16 +11:00
Peter Barker
bcc1cb9dbb
autotest: use get_parameter in place of mav's param object
...
This is the only place in the code that does this
2021-02-18 15:06:26 +11:00
Peter Barker
3cf1b9444f
autotest: get_sim_time_cached in NMEA output test to stop losing msgs
2021-02-18 11:26:22 +11:00
Peter Barker
ce61f44505
autotest: reset SITL commandline after fetching unhidden parameters
...
this makes a difference under Valgrind, which has to reboot slightly differently to normal SITL
2021-02-18 11:26:22 +11:00
Peter Barker
78aa729b90
autotest: flake8 compliance for common.py
2021-02-18 10:43:05 +11:00
Peter Barker
33fee211a4
autotest: extend pexpect timeouts when running under Valgrind
2021-02-17 18:16:04 +11:00
Peter Barker
a292fe1b8b
autotest: use wait_statustext rather than mavproxy.expect
...
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
2021-02-17 18:16:04 +11:00
Peter Barker
e4d5a92721
autotest: add wait_distance_to_nav_target method
2021-02-13 19:34:52 +11:00
Peter Barker
a5706a18af
autotest: handle Py2 not having ConnectionResetError built in
2021-02-12 18:24:18 +11:00
Iampete1
904b493809
Tools: autotest, common.py remove extra comma
2021-02-11 09:20:15 +11:00
Peter Barker
4324d66c13
autotest: loosen time constraint on mavlink messages in magcal
...
Saw an error where we didn't get one of these in 5 seconds.
That sounds like too much. But we'll loosen the constrain anyway
2021-02-10 09:28:45 +11:00
Peter Barker
bd8384b322
autotest: break out a get_altitude method
2021-02-10 09:28:25 +11:00
Alessandro Apostoli
e2aaf4c216
Tools: autotest, fix for frsky not defined error ( #4 )
2021-02-10 09:27:58 +11:00
Peter Barker
d9dd93bcdd
autotest: don't run frsky tests armed for the most part
2021-02-10 09:27:58 +11:00
Peter Barker
742d5a9fa0
autotest: add body_frame_velocity
2021-02-08 22:44:32 +11:00
Peter Barker
f65bee80dc
autotest: use BATTERY_STATUS to detect sub reboot
...
Sub doesn't implement AP_Stats so we have custom reboot detection for
it.
The current look-for-string strategy is flawed - we're missing the
string on reboot
2021-02-03 13:58:17 +11:00
Pierre Kancir
e13a35abc1
Autotest: check for empty message before trying to use it
2021-02-03 12:56:01 +11:00
yaapu
bb576a49b8
Tools: added autotest for frsky rpm telemetry
2021-02-03 12:49:38 +11:00
Andrew Tridgell
d47afb2406
autotest: added AHRSTrim test and add trim to accel cal test
...
this ensures the handling of AHRS trim is correct
2021-01-25 16:24:50 +11:00
Peter Barker
ad2ab333f9
Tools: autotest: allow autotest to connect directly to SITL
2021-01-24 09:25:45 +11:00
Peter Barker
8c7d63433c
autotest: clear mission ourselves rather than with MAVProxy at end of test
2021-01-24 09:25:45 +11:00
Peter Barker
1fec88af21
autotest: make arming test a little more verbose
2021-01-21 22:15:16 +11:00
Peter Barker
3279400e2e
autotest: disarm_with_rc_input shortcuts if it sees rudder-disarm-disabled
2021-01-21 14:25:47 +11:00
Peter Barker
f452c6bb51
autotest: break out a statustext_in_collections method from wait_statustext
2021-01-21 14:25:47 +11:00
Andrew Tridgell
58b9cd2c6e
autotest: added assert_reach_imu_temperature() abstraction
2021-01-21 13:09:21 +11:00
Andrew Tridgell
5a5ba26468
autotest: expanded accelcal test to check values
...
this checks the resulting accelcal is correct within 1%
2021-01-21 13:09:21 +11:00
Andrew Tridgell
0c3655b01f
autotest: fixed epsilon handling in set_parameters
2021-01-21 13:09:21 +11:00
Peter Barker
c7a6047904
autotest: add option to retry tests / create and use Test definition object
2021-01-21 10:23:17 +11:00
Peter Barker
03b2473c61
autotest: correct get_parameter_direct attempts decrement
2021-01-20 20:06:46 +11:00
Andrew Tridgell
c396d15890
Revert "autotest: ensure defaults files don't set already-default-values"
...
This reverts commit 3d431cd4f1
.
It breaks MissionPlanner SITL. We can re-apply once MissionPlanner
copes with external_model.
2021-01-20 08:54:43 +11:00
Peter Barker
3d431cd4f1
autotest: ensure defaults files don't set already-default-values
...
autotest: mark some vehicles as having external physics models
autotest: add default_params_filename to some vehicle info
2021-01-19 10:34:00 +11:00
Peter Barker
8f9d3909f1
autotest: model_defaults_filepath always returns a list
2021-01-19 10:34:00 +11:00
Peter Barker
30929e7f1a
autotest: add verbose option to assert_sensor_state
2021-01-18 21:25:58 +11:00
Peter Barker
ba1973d343
autotest: parse messages when setting parameters
...
This breaks some tests which are waiting on statustexts while setting
parameters
2021-01-18 15:19:39 +11:00
Randy Mackay
1f8b48e8f7
Tools: common autotest spelling fix
...
reach should be reached
2021-01-16 08:24:23 +09:00
Peter Barker
cd8a393ac2
autotest: create own RC thread to handle setting of RC overrides
...
autotest: prevent method-on-undef problem in case of early test failure
autotest: plumb MAVProxy rc input back in for switch test
autotest: close off rc thread in case of timeout
2021-01-15 20:56:30 +11:00
Peter Barker
e85e6d3375
autotest: use new set_parameters in place of many set_parameter calls
...
autotest: use set_parameters for applying from parameter file
autotest: use set_parameters in place of many set_parameter calls
2021-01-13 15:09:29 +11:00
Peter Barker
2917c75f35
autotest: add option to timeout parameter fetching in system time
2021-01-13 15:09:29 +11:00
Peter Barker
83f2f365c0
autotest: implement a more efficient set_parameters, implement set_parameter in terms of it
2021-01-13 15:09:29 +11:00
Peter Barker
8497f8fc73
autotest: correct some timeout issues around Copter takeoff
2021-01-13 12:24:17 +11:00
Peter Barker
e7aefc7fe4
autotest: make polling home position quiet by default
2021-01-13 12:24:17 +11:00
Peter Barker
5318538182
autotest: reboot SITL when moving from EKF10 to EKF2 in mag test
...
Bad things happen when moving from one to the other...
2021-01-13 12:24:17 +11:00
Peter Barker
fdb5b5e6d6
autotest: correct dataflash transfer test for long periods
...
This came in with a 35 second delay, which is rather spectacular given
the 5 second loop it is in.
2021-01-11T11:54:30.3046835Z dataflash_logger status
2021-01-11T11:54:30.3047406Z MANUAL> DFLogger: Active Rate(35s):408.788kB/s Block:65034 Missing:0 Fixed:0 Abandoned:0
2021-01-11T11:54:30.3048195Z Timed out looking for Active Rate\([0-9]s\):([0-9]+[.][0-9]+)
2021-01-11T11:54:30.3048801Z AT-0472.3: Exception caught: 60
2021-01-13 12:24:17 +11:00
Peter Barker
3a264e0a76
autotest: use LOG_STRUCTURE_FROM as key string (don't need library name)
2021-01-12 17:44:24 +11:00
Josh Henderson
0052e4d528
Tools: auotest add LOG_STRUCTURE_FROM_AHRS
2021-01-12 10:13:22 +11:00
Peter Barker
4d19ff6b26
autotest: prompt ArduPilot for SYSTEM_TIME message during reboot
...
This helps us actually execute the timeouts appropriately and thus
re-fetch the STAT_BOOTCNT parameter we use for detecting the reboot
Eliminates annoying pauses during testing.
2021-01-09 16:20:12 +11:00
Peter Barker
5120ebf2f6
autotest: add a set_parameters method
2021-01-08 23:51:33 +11:00
Andy Piper
f702288ad2
autotest: correct number of logs
2021-01-02 22:30:08 +11:00
Peter Barker
38ea62c5d7
autotest: send mode change messages directly rather than via MAVProxy
2020-12-31 17:43:06 +11:00
Peter Barker
d31f676c33
autotest: don't use MAVProxy for uploading using fencepoint protocol
2020-12-31 17:42:50 +11:00
Peter Barker
2b06ae9aa0
autotest: create and use a wait_sensor_state method
2020-12-31 17:42:33 +11:00
Peter Barker
7c7fb67829
autotest: fixes for AFS test
2020-12-31 17:42:20 +11:00
Peter Barker
7f79ddf3ff
autotest: CRSF: remove pointless wait-ready-to-arm
2020-12-31 17:42:06 +11:00
Peter Barker
6c48a38497
autotest: avoid zero-byte-read on log download
2020-12-31 17:39:53 +11:00
Peter Barker
b53b30ea51
autotest: split out a get_rc_channel_value()
2020-12-29 15:03:34 +11:00
Peter Barker
0a5eedb05a
autotest: wipe and reinitialise parameters when resetting SITL commandline
...
Should fix this scenario:
- Plane soaring test uses different defaults file
- soaring test sets a parameter away from default value
- context pop sets it back to the value in the defaults file
- it is now in permanent storage with the default found in the
different defaults file used by the soaring test
- we finish running the soaring test an reset the SITL command line
back to default, with the old defaults file
- we go on to running the next test. At this point the value for that
parameter is the default in the defaults file used by the soaring test.
Something similar applies in the Callisto test.
2020-12-25 12:18:01 +11:00
Peter Barker
0788b46374
autotest: add trivial test for Callisto
2020-12-25 12:18:01 +11:00
Peter Barker
5d23dc2314
autotest: avoid replicating enumeration value names from pymavlink
2020-12-24 00:22:52 +11:00
Pierre Kancir
06d6526ba6
Autotest: correct wait_distance_to_home comment
2020-12-24 00:22:52 +11:00
Pierre Kancir
6565309325
Autotest: add test_set_velocity_global_int tests
2020-12-24 00:22:52 +11:00
Pierre Kancir
10673122c0
Autotest: add test_set_position_global_int tests
2020-12-24 00:22:52 +11:00
Pierre Kancir
62a1fa1052
Autotest: add wait_speed_vector and wait yaw_speed functions
2020-12-24 00:22:52 +11:00
Pierre Kancir
0ca8e817d5
Autotest: wait_and_maintain add support of Vector3
2020-12-24 00:22:52 +11:00
Pierre Kancir
dbaeb668f1
Autotest: add MAV_FRAME dictionary
2020-12-24 00:22:52 +11:00
Pierre Kancir
0bf7bd7f68
Autotest: add set_position mask to common.py
2020-12-24 00:22:52 +11:00
Peter Barker
4efcf16005
autotest: correct number of bytes we expect to download
...
We request a fixed number of bytes, which could be more or less than the
log file size.
2020-12-18 13:35:15 +11:00
Peter Barker
8e71e2505a
autotest: correct lookup for most recent log file
2020-12-18 13:35:15 +11:00
Pierre Kancir
9550721ae4
Tools: add initial_mode testing
2020-12-16 17:27:07 +09:00
Peter Barker
9ad2961664
autotest: allow regex for matching wait_statustext
2020-12-11 07:35:02 +11:00
Peter Barker
cecdc798ca
autotest: present strings for unexpected results in run_cmd_get_ack
2020-12-09 14:09:44 +11:00
Peter Barker
9207bd8a8a
autotest: remove armability check from compass calibration test
...
The new prearm-checking code has shown that we're not actually armable
after all!
Even the new prearm bit won't tell you if you can arm - you have to arm
to test that!
2020-12-07 11:21:30 +11:00
Peter Barker
087300749c
autotest: ensure we have position without being armable for compass cal check
2020-12-07 11:21:30 +11:00
Peter Barker
38e324f141
autotest: do not check prearm bit in dataflash-over-mavlink
...
We won't be armable - but the other checks we make will ensure we get
the error we are looking for
Also use a more reliable way of draining the data from the autopilot
2020-12-07 11:21:30 +11:00
Peter Barker
5707d8ecc0
autotest: check new MAV_SYS_STATUS_PREARM_CHECK in wait_ready_to_arm
2020-12-07 11:21:30 +11:00
Peter Barker
17f806cdb9
autotest: add test for execution of button-bound functions
2020-12-01 10:06:57 +11:00
Peter Barker
12f001066b
autotest: split out a wait_armed function
2020-12-01 10:06:57 +11:00
Peter Barker
3f6b398a01
autotest: include EK2,EK3 and DAL LogStructures in code-defined messages
2020-11-24 15:33:37 +11:00
Peter Barker
29b913cd41
autotest: avoid using undefined fmt variable
2020-11-12 21:00:04 +11:00
Peter Barker
58bdae1b52
autotest: get Valgrind closer-to-working
...
This gets us past the reboot problem for the most part, where Valgrind doesn't like you exec'ing
2020-11-11 18:22:58 +11:00
Andrew Tridgell
403275beea
autotest: added RBOH message
2020-11-10 16:15:45 +11:00
Andrew Tridgell
4a06641048
autotest: added RWOH message
2020-11-10 16:15:45 +11:00
Andrew Tridgell
7f0113b82d
autotest: added REPH and REVH
2020-11-10 16:15:45 +11:00
Andrew Tridgell
ef5baaf482
autotest: added ROFH msg
2020-11-10 16:15:45 +11:00
Andrew Tridgell
8ba067608b
autotest: cope with LogStructure.h in multiple places
...
and allow for no docs in replay msgs
2020-11-10 16:15:45 +11:00
Andrew Tridgell
161f2a8d2f
autotest: improved error msg for missing doc fields
...
Co-authored-by: Peter Barker <pbarker@barker.dropbear.id.au>
2020-11-10 16:15:45 +11:00
bugobliterator
c72c96fa9c
Tools: setup CI test for CANBus
2020-11-04 19:59:40 +11:00
Peter Barker
18330d16de
autotest: add test for MAVlite
2020-10-27 10:17:53 +11:00
Buzz
586e9f80d5
AutoTest: break copter autotests into smaller "under 10 minute" chunks to speedup github actions CI
2020-10-21 18:01:47 +11:00
Peter Barker
937d7bf335
autotest: add quiet option to drain_mav
2020-10-15 16:31:41 +11:00
Peter Barker
49fd762f26
autotest: fix and re-enable button test
...
A recent commit to fix the setting-of-pullup-resistors in SITL makes it
possible to re-enable this.
Closes #15259
2020-10-15 08:34:08 +11:00
Peter Barker
8f1e9ebc7f
autotest: reset camera feedback rate if exception is raised
2020-10-12 13:48:15 +11:00
Peter Barker
d13f6acc66
autotest: quieten mav draining
2020-10-08 17:21:35 +09:00
Peter Barker
1d0735f206
autotest: add a poll_message method
2020-10-07 11:54:02 +11:00
Peter Barker
669622c614
autotest: improve use of SITL-is-running
...
ATM if the SITL binary dies we don't catch it anywhere. This might
become part of the solution for that, as well as some changes on
run_one_test.
2020-09-22 21:11:57 +10:00
Peter Barker
1075e13352
autotest: stop set_parameter from using get_parameter
...
Setting a parameter on ArduPilot causes the autopilot to emit the new
value in a PARAM_VALUE message, so we do not need to fetch it ourselves.
Fetching it ourselves causes subtle problems for the autotest suite
where a PARAM_VALUE is currently in the uart buffer - so the autotest
set_parameter has consumed one PARAM_VALUE message (the auto-emitted
one). If it immediately does a set_parameter then the next
PARAM_VALUE it sees will be the OLD value as the value comes out of the
uart.
2020-09-15 19:27:36 +10:00
Peter Barker
3e882fcad8
autotest: loosen mag-percent-complete threshold to 95%
...
So 98% wasn't loose enough...
2020-09-11 15:31:45 +10:00
Peter Barker
0f5f040380
autotest: send all progress messages to autopilot
...
These will be logged into dataflash and into the telemetry log
2020-09-09 23:47:28 +10:00
bugobliterator
d997ca8779
autotest: pass calibration test even if 98% complete before success
2020-09-09 23:46:23 +10:00
Peter Barker
51b54d3740
autotest: avoid leaving message hooks around
...
Can lead to some very weird and confusing output
2020-09-09 17:59:17 +10:00
Peter Barker
9228f47dc9
autotest: create collections-on-context to record selected messages
2020-09-08 14:19:08 +10:00
Peter Barker
f3866e5f39
autotest: disable button test
2020-09-08 12:31:15 +10:00
Andrew Tridgell
7c5a0a6a43
Tools: disable LOG_REPLAY by default in autotest
...
LOG_REPLAY prevents us logging when we have sensor failures, which
makes many tests hard to debug
2020-09-08 11:01:14 +10:00
Peter Barker
65268ee3d4
autotest: more button-test fixes
2020-09-06 16:49:16 +10:00
bugobliterator
6203e0685e
autotest: disable MAG orientation test
2020-09-06 11:21:28 +10:00
Andy Piper
0b9d9fc284
autotest: use StringIO correctly
2020-09-06 09:12:59 +10:00
Andy Piper
6ebc7622fe
autotest: comprehensive dataflash test
2020-09-05 10:20:39 +10:00
Peter Barker
2ea41b7997
autotest: spit out actual simulated mag orientations as part of debug
2020-09-03 13:08:07 +10:00
Peter Barker
5a8b1639d0
autotest: fix nmea output test
2020-09-02 10:05:26 +10:00
Peter Barker
23ba2002e8
autotest: dump final mag cal report verbosely
2020-09-01 14:11:57 +10:00
Peter Barker
74c47827d9
autotest: drain stdout of SITL binary
...
The new rate messages were filling up the stdout buffer, causing the
process to block....
2020-08-30 08:38:35 +10:00
Peter Barker
397e134106
autotest: quieten RTL
2020-08-30 08:38:35 +10:00
Peter Barker
065d03dd30
autotest: add a timeout in the button test
2020-08-30 08:38:35 +10:00
Peter Barker
c01b26ca62
autotest: fix race condition in EKF type 10
...
EKF type 10 is always able to give you a position - but the arming
checks require you to have a good GPS position, and that's something
else again.
2020-08-30 08:38:35 +10:00
Peter Barker
43cdceba8f
autotest: tweak wait_ready_to_arm
2020-08-30 08:38:35 +10:00
Peter Barker
b7641345e1
autotest: set and get parameters directly using mavlink message
2020-08-30 08:38:35 +10:00
Pierre Kancir
936511a720
Autotest: common: correct some text format
2020-08-29 10:44:19 +10:00
Pierre Kancir
5b72de25e0
Autotest: update wait_distance_to_home
...
Autotest: copter: allow to pass min_distance for RTL
Autotest: rover: allow to pass min distance for RTL
2020-08-29 10:44:19 +10:00
Pierre Kancir
16b499d0f6
Autotest: allow to select which GPS flags we want to wait for
2020-08-27 09:11:13 +10:00
Peter Barker
80bee19bc9
autotest: correct race condition in button test
...
A BUTTON_CHANGE may have been emitted after we send the parameter but before it is processed by the autopilot
2020-08-26 13:22:14 +10:00
Pierre Kancir
a181fcf8a2
Autotest: common: put generated parameter and LogMessage files into buildlogs directory
2020-08-25 20:01:27 +10:00
Peter Barker
a523868b33
autotest: fix Beacon test
2020-08-25 17:21:50 +10:00
Peter Barker
69d246d63e
autotest: add test for priority-based compass reordering
2020-08-25 08:30:04 +10:00
Peter Barker
bb697dd4b9
autotest: avoid using mavproxy for testing message intervals
2020-08-24 19:33:37 +10:00
Peter Barker
00bfe04539
autotest: remove duplicate recovery code from set-message-interval test
2020-08-24 14:00:38 +10:00
Peter Barker
03d0eda7f1
autotest: use a passthrough progress function for Telem objects
2020-08-24 13:24:41 +10:00
Pierre Kancir
8b92af732a
Autotest: common: add wait_heartbeat to change_mode to clean up msg and give time to status to update
2020-08-21 13:35:51 +10:00
Peter Barker
cddb5fb1cc
autotest: use message hook when waiting for statustext
...
Eliminates a race condition when waiting for statustexts. Getting the
current sim time slurps messages.
2020-08-21 12:26:12 +10:00
Pierre Kancir
b7f46462f8
Autotest: common: reduce timeout on ArmFeature test
...
This is unnessary to wait for 60s for failure, 15s is enough
2020-08-21 09:13:32 +10:00
Pierre Kancir
acc4a1db3f
Autotest: remove special case for vicon and default vicon for copter to false
2020-08-17 21:17:26 +10:00
Peter Barker
82dd7ece6c
autotest: fix frsky bitop on float issue
...
Crops up in Python 3.8:
gpi_lat = self.tf_encode_gps_latitude(gpi.lat)
File "/home/pbarker/rc/ardupilot/Tools/autotest/common.py", line 6183, in tf_encode_gps_latitude
value = ((abs(lat)/100)*6) | 0x40000000
TypeError: unsupported operand type(s) for |: 'float' and 'int'
2020-08-15 10:42:47 +10:00
Pierre Kancir
388fef23d9
Autotest: common: remove use of some raw mavproxy cmd for rc
2020-08-15 09:16:24 +10:00
Pierre Kancir
30fa433faa
Tools: don't add duplicate param to context
2020-08-14 18:16:47 +10:00
Mark Whitehorn
d0ff26e782
autotest: expand quadplane AirMode autotest
2020-08-13 08:47:27 +10:00
Peter Barker
b9dc7118d4
autotest: add do_timesync_roundtrip to do a timesync against SITL
...
On the assumption that ArduPilot processes mavlink packets
synchronously (or at least in order), after we have run a timesync
roundtrip we can reasonably expect any mavlink command we have sent
prior to the roundtrip to have been processed, and we should be able to
see the results in the mavlink stream.
2020-08-05 13:24:15 +10:00
Peter Barker
4640c24872
autotest: correct checking for no-logs string
2020-08-04 15:12:08 +10:00
Peter Barker
b2748f19f6
autotest: correct validator for Distance wait-and-maintain
2020-08-04 15:12:08 +10:00
Willian Galvani
0f992ac6a3
Autotest: add test for Sub position hold
2020-08-03 20:19:28 -07:00
Peter Barker
66ffb4a17b
autotest: retry parameter fetch in MIS_TOTAL test
...
There's a race condition with MAVProxy; it's fetching parameters here
and seems to ignore our requests.
Also correct named parameter from retry to attempts
2020-07-24 09:38:39 +10:00
Peter Barker
ccff006517
autotest: correct time-spent-waiting-to-arm for zero case
2020-07-23 18:10:06 +10:00
Peter Barker
f1fc61cb41
autotest: improve compass test diagnostics
2020-07-23 15:11:11 +10:00
Peter Barker
b69130d352
autotest: require uptime of 5s before declaring GPS definitely not present
...
Until we detect a GPS we mark it as "not present", even if the
parameters say that there should be one present.
2020-07-23 11:17:42 +10:00
Peter Barker
3b0524a7e1
autotest: add diagnostics to frsky passthrough test
2020-07-21 11:26:52 +10:00