Shiv Tyagi
a4c88ab2c0
autotest: use guided mode to move Rover away for Dock test
2022-09-19 17:51:48 +10:00
Peter Barker
b5be0dcd14
autotest: correct reboot in failure case for dock mode test
...
reboot will fail if we are still armed
2022-09-19 09:29:04 +10:00
Peter Barker
d4587e787e
autotest: add a drive_to_location for Rover
2022-09-19 09:28:39 +10:00
Peter Barker
ba6cf1a42b
autotest: remove disabled LogUpload test
...
This has been unused for a long time, and is getting in the way of reforms. Its position as a test rather than as a part of a framework was always going to cause oddities, particularly after we split the Copter tests into several chunks.
2022-09-11 20:45:13 +10:00
Peter Barker
80c36ecc97
autotest: use reflection to collect test details
...
We had a pattern emerging of using the test name as the method name to contain the actual test. We also tended to duplicate the docstrings in the test description - or omit the docstring.
This uses reflection to retrieve both the test name and the description, meaning less duplication of this information and enforcing having docstrings on the test methods.
2022-09-10 18:27:27 +10:00
Shiv Tyagi
6393ef6b8e
Tools: fix Rover AutoDock test
2022-09-09 19:12:30 +10:00
Shiv Tyagi
24cff5f9b1
Tools: add autotest to test docking on rover
2022-09-06 11:23:51 +09:00
Randy Mackay
c898261698
Tools: autotest uses PRX1 parameters
2022-08-24 18:26:27 +10:00
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