Peter Barker
f8c1c3309d
autotest: allow more time for Rover to go to smartrtl intermediate point
...
race conditions with commands from autotest suite
2022-08-22 09:54:09 +10:00
Peter Barker
cd207164a2
autotest: correct Rover DriveMission test
...
4 would seem to have been just a magic number and could be missed on faster speedups
2022-08-19 17:04:54 +10:00
Peter Barker
add5243634
autotest: Rover: ensure we actually stop at rally point
2022-08-14 07:52:42 +10:00
Peter Barker
8fd5df33d5
autotest: add test for stick-mixing in auto mode
2022-08-11 20:03:12 -04:00
Peter Barker
515b79a6ca
autotest: remove un-needed calls to drain_mav_unparsed
...
these calls are generally bad now, given we have context_collect things going on which always want to see messages coming in
2022-07-20 15:17:25 +10:00
Peter Barker
a672c7df97
autotest: add test for changing modes by mode number
...
Useful for when you don't have a mapping entry for the mode number yet
2022-07-12 08:51:21 +10:00
Peter Barker
043764fbf9
autotest: use set_parameters in rover; fixup tests to use context
2022-06-30 11:55:19 +10:00
Peter Barker
ef0f5110cb
autotest: set Rover speedup to 30
...
This is closer to what's achieved on modern CPUs.
Running at 100 can lead to very rapid RC inputs which can cause issues.
2022-06-29 21:02:27 +10:00
Peter Barker
4a015bd479
autotest: fix race condition in mission-end-behaviour test
2022-06-16 21:24:31 +10:00
Peter Barker
57b0d7f235
autotest: change rover default speedup time to 100
2022-06-16 21:24:31 +10:00
Pierre Kancir
4e2e4fa4d4
Tools: autotest: remove useless shebang
2022-06-08 08:16:42 +09:00
Peter Barker
876cc77808
autotest: fix Rover syntax for Python2
...
Apparently ** is Python3-only
2022-04-24 14:21:45 +09:00
Peter Barker
1340132f6f
autotest: add rangefinder test
2022-04-19 10:26:10 +10:00
Randy Mackay
b6af126514
Tools: relax rover sprayer test
...
vehicle's speed is slightly lower when using SCurve navigation
2022-03-30 15:34:14 +09:00
Randy Mackay
ea5e3a8ae0
Tools: rover autotests send position-target-global-int more slowly
...
SCurves do not work with very fast changes of target
2022-03-30 15:34:14 +09:00
Randy Mackay
8ff6972b7e
Tools: rover autotest DriveRTL timeout increased by 10sec
2022-03-30 15:34:14 +09:00
Peter Barker
001a06d17d
autotest: add tests to a pair of lua scripts
2022-02-18 21:23:06 +11:00
Peter Barker
376d7ade50
autotest: use assert_receive_message to remove redundant code
2022-02-15 11:06:10 +11:00
Peter Barker
c8780792d4
autotest: loosen position constraint on SET_POSITION_TARGET_LOCAL_NED test
2022-01-08 13:59:19 +11:00
Peter Barker
62df8facd9
autotest: fix rover POSITION_TARGET_LOCAL test
2022-01-07 22:47:19 +11:00
Peter Barker
a58e808af8
autotest: fix Rover gripper mission test
...
We can lose the statustext when getting current time
2022-01-06 17:48:30 +11:00
Peter Barker
2cdb082139
autotest: add test for estop-on-rc-switch
2021-12-17 09:58:37 +11:00
Peter Barker
b75f8211d2
autotest: comment out probably-defunct test
2021-11-30 20:50:32 +11:00
Peter Barker
6e4aa2264f
autotest: add test for uploading big fence then small fence
2021-11-30 20:50:32 +11:00
Peter Barker
56dda4c07f
autotest: fix race condition in Rover gcs mission test
2021-11-05 09:07:19 +11:00
Josh Henderson
a06a192255
Autotest: Rover add test for multiple depth finders
2021-10-15 13:08:17 +11:00
Peter Barker
00c6308b25
autotest: add test for FRAMStorage
2021-10-12 20:01:49 +11:00
Peter Barker
b2a7841672
Tools: allow for selection of Storage backend type at runtime
2021-10-05 10:16:54 +11:00
Peter Barker
89c884e8f1
autotest: add test for HIGH_LATENCY2
2021-09-29 15:51:30 +10:00
Peter Barker
40a463f60c
autotest: simplify camera mission item test
...
Rename for the modern style of keeping method name same as test name.
Remove pointless try/except block as it wasn't doing anything useful.
2021-09-29 11:38:18 +10:00
Peter Barker
1e1e8010e3
autotest: remove APM references
2021-09-18 10:45:39 -05:00
Peter Barker
8fc6e98900
autotest: raise exception for arm/disarm failures on switch/rc
...
Users were calling these without checking the return values. Make that
a non-issue
2021-08-13 13:40:28 +10:00
Peter Barker
013bee99f4
autotest: rover: wait ready to arm before running motor test
2021-08-13 08:00:52 +10:00
Peter Barker
7929122f49
autotest: improve AHRS trim test
2021-07-28 17:20:28 +10:00
Peter Barker
6944ef6af1
autotest: fly each working Helicopter frame
2021-06-09 12:15:42 +10:00
Peter Barker
3eb164fb6a
autotest: move script helper functions from rover to common
2021-05-14 13:21:36 +10:00
Peter Barker
9a13b5c9b6
autotest: add test for auxfunc triggering via script
2021-05-05 07:13:18 +10:00
Peter Barker
7d9daccdf7
autotest: fix mavproxy switch test
...
The order in which we fix the environment means that we need to be
listening on the correct port for rc values - so just fix it in the test
2021-04-03 08:58:52 +11:00
Peter Barker
462ac255a3
autotest: start MAVProxy only as needed for testing
2021-03-19 09:46:45 +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
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
0daa1a63d3
autotest: remove pointless fetch_parameters call
...
And the entire method, replace with equivalent test
2021-03-01 17:27:52 +11:00
Peter Barker
1f47698076
autotest: use change_mode in place of mavproxy.send
2021-03-01 13:10:09 +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
c13d229877
autotest: use self.set_current_waypoint rather than "wp set" to set current wp
2021-02-19 12:25:40 +11:00
Peter Barker
726f54e37f
autotest: flake8 compliance for rover.py
2021-02-18 10:43:05 +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
1ca0998f32
Tools: take MAV_CMD_DO_SPRAYER as a mavlink command
2021-02-16 22:36:43 +11:00
Peter Barker
b14dcf4bae
Tools: add mission command to turn sprayer on and off
2021-02-16 22:36:43 +11:00
Pierre Kancir
c02dfd1214
Autotest: add EndMissionBehavior Test for rover
2021-01-27 08:23:52 +09: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
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
04a52835c0
autotest: correct Rover set-position-target-global-int test
...
The vehicles doesn't send us set messages!
2021-01-19 21:16:39 +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
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
47aea5f44c
autotest: print stack traces for caught exceptions
2021-01-13 19:46:13 +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
f478666700
autotest: correct scripting test for missing message
...
The message could pass us by
2021-01-13 12:24:17 +11:00
Peter Barker
2240a60e20
autotest: add trivial test for set-position-target-local-ned
2021-01-05 08:13:02 +09:00
Peter Barker
53336595e1
autotest: add simple test for Rover set_attitude_target handling
2021-01-05 08:13:02 +09:00
Peter Barker
65cffdad5a
autotest: print stack traces when exceptions caught
2020-12-31 17:43:23 +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
12505c4c28
autotest: add tests for new higher-channel override semantics
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
Pierre Kancir
67533c3284
Autotest: add setpoint_target tests on rover
2020-12-24 00:22:52 +11:00
Pierre Kancir
7a2a60e65c
Tools: rover: correct test_setting_modes_via_mavproxy_switch for RTL and AUTO
2020-12-16 17:27:07 +09:00
Pierre Kancir
e4707c20ea
Tools: rover: add initial_mode_switch_mode
2020-12-16 17:27:07 +09:00
Pierre Kancir
7d88d104b8
Tools: put Rover SlewRate test on disable list for now
2020-12-16 08:25:52 +11:00
Peter Barker
17f806cdb9
autotest: add test for execution of button-bound functions
2020-12-01 10:06:57 +11:00
Pierre Kancir
07ffac429b
Tools: rover: add test for slew rate
2020-11-25 17:49:20 +09: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
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
Peter Barker
f3866e5f39
autotest: disable button test
2020-09-08 12:31:15 +10:00
Peter Barker
cafc5b01f4
autotest: fix race condition in Rover RTL test
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
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
Peter Barker
a190490b64
autotest: do not rely on MAVProxy for sending banner request
2020-08-24 15:26:57 +10:00
Pierre Kancir
0c3e9bbd4b
Autotest: fix mavlink_time_boot format: should be int
2020-08-18 08:33:08 +10:00
Peter Barker
c69908e7ea
autotest: add proximity sensor readinds as if from depth camera
2020-08-17 11:20:12 +10:00
Peter Barker
ea5aa594a3
autotest: add test for AP_Proximity_MAV
2020-08-17 11:20:12 +10:00
Pierre Kancir
52ae087fb5
Autotest: rover: remove some raw mavproxy cmd for rc
2020-08-15 09:16:24 +10:00
Peter Barker
f0482935cc
autotest: slow down simulation to avoid receiving re-request of item
...
# avoid a timeout race condition where ArduPilot re-requests a
# fence point before we receive and respond to the first one.
# Since ArduPilot has a 1s timeout on re-requesting, This only
# requires a round-trip delay of 1/speedup seconds to trigger
# - and that has been seen in practise on Travis
AT-0417.0: Sending item with seq=0
AT-0417.2: Got (MISSION_REQUEST {target_system : 243, target_component : 250, seq : 0, mission_type : 1})
AT-0417.2: Got (MISSION_REQUEST {target_system : 243, target_component : 250, seq : 0, mission_type : 1})
AT-0417.2: Exception caught: Traceback (most recent call last):
File "/home/travis/build/ArduPilot/ardupilot/Tools/autotest/common.py", line 3950, in run_one_test
test_function()
File "/home/travis/build/ArduPilot/ardupilot/Tools/autotest/rover.py", line 4216, in test_poly_fence
self.test_fence_upload_timeouts()
File "/home/travis/build/ArduPilot/ardupilot/Tools/autotest/rover.py", line 4057, in test_fence_upload_timeouts
target_component=target_component)
File "/home/travis/build/ArduPilot/ardupilot/Tools/autotest/rover.py", line 4010, in test_fence_upload_timeouts_2
self.expect_request_for_item(item)
File "/home/travis/build/ArduPilot/ardupilot/Tools/autotest/rover.py", line 3958, in expect_request_for_item
raise NotAchievedException("Expected request for seq=%u" % item.seq)
NotAchievedException: Expected request for seq=1
The "AT" timestamps there are wallclock time. Since speedup for Rover
is 8 by default, that could be as much as 1.6 seconds meaning a
re-request from ArduPilot would be legitimate.
I've added some debug, too - we now emit "Sending item with seq=1"
between those two "Got" lines. That should make the problem clearer -
we've received a re-request rather than a request for the item after the
one we've already sent.
2020-08-09 20:13: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
f5a928ae26
autotest: remove debug to reduce CI log sizes
2020-07-24 12:39:17 +10:00
Peter Barker
babb3fef54
autotest: remove incorrect use of get_sim_time_cached
...
These could instantly time out
2020-07-21 14:10:16 +10:00
Peter Barker
74c04271fa
autotest: fix breakages for defaulting to mavlink2
...
This highlights the fact that fetching rally points using the mission
item protocol does some when you're talking mavlink1 doesn't work out
well.
# so this looks a bit odd; the other end isn't sending
# mavlink2 so can't fill in the extension here.
2020-06-30 21:58:48 +10:00
Peter Barker
29e6f058a9
autotest: add test for scripting guided-steering-throttle example
2020-06-26 11:39:06 +10:00
Peter Barker
bb14746517
autotest: re-enable Rover BendyRuler test
...
This appears to now be working
2020-06-24 08:53:04 +09:00
Peter Barker
300e7ac2eb
autotest: increase timeout on receiving mission-related messages
...
... to silly proportions.
2020-06-12 14:05:35 +10:00
Peter Barker
77e5236278
autotest: drain mavlink queue to avoid failing on slow MISSION_COUNT
...
It was observed from a log of a failed CI test that the ACK from
clearing the rally items took 6 wallclock seconds to arrive.
We were not waiting for that ACK to arrive before sending the request
for the mission item count, but if it has taken more than six seconds
for the ACK to arrive it is reasonable to assume that MISSION_COUNT
could very well take more than the 10 seconds we allow for it.
If we drain the mav before sending the request for the mission count we
should remove any signficiant timing problem due to a backlog of mavlnk
messages, but the amount of traffic here is problematic.
Also drain in lots of other places where we might be spending way too
long parsing messages.
2020-06-11 20:53:50 +10:00
Peter Barker
dc19dfaed8
autotest: fix several race conditions in RCOverride test
2020-06-11 08:30:32 +10:00
Rajat Singhal
969a66fa01
Tools: autotest: Add Max RC input test for Rover
...
Currently disabled since it triggers Arithmetic Exception
2020-05-31 21:11:36 +10:00
Peter Barker
b0916231b2
autotest: add tests for log download
2020-05-26 19:32:49 +10:00
Peter Barker
f6b121ad87
autotest: add tests for logging
2020-05-15 16:02:09 +10:00
Peter Barker
bd0ebb5778
autotest: accept statustext and ack in any order for mission errors
...
Accept statustext/ack in any order; statustext may come after ack
2020-05-04 18:42:18 +10:00
Peter Barker
d197fd4acf
autotest: fix rare, random failure in GCSRally test
...
Notionally the statustext could be put aside and we could not have room
for it, so we see the ack first.
2020-05-04 00:22:54 +10:00
Samuel Tabor
913e5a23fe
autotest: Add method to get default params for model.
2020-04-22 10:01:09 +10:00