Commit Graph

1168 Commits

Author SHA1 Message Date
Evan Hammac
37accc96f6 Tools: Added Tyndall AFB to locatons.txt file 2018-06-27 09:37:25 +10:00
Peter Barker
7cdb05ccc0 Tools: add default-parameter-filename sanity check 2018-06-21 19:32:46 +10:00
Randy Mackay
ccb1042074 Tools: update sitl rover default params 2018-06-08 09:19:25 +09:00
Peter Barker
0b8b23baf6 Tools: adjust tests for vfr_hud getting absolute altitude 2018-06-05 09:38:20 +10:00
Michael du Breuil
177c4c2d44 Tools: Accept mAh as a unit 2018-05-26 08:49:02 +09:00
Tom Pittenger
c59be8bafe Tools: add "octal" param unit 2018-05-23 14:02:45 -07:00
Jesse Millwood
014702fc64 Changed Argument Parsing for sim_vehicle.py
The arguments now properly pare the arguments passed through to the
ardupilot instance and to mavproxy.
2018-05-23 17:34:24 +10:00
Andrew Tridgell
a17979383d autotest: fixed single and coax motor ranges 2018-05-21 13:04:13 +10:00
Peter Barker
ee01687c55 Tools: fix autotest/valgrind on Vagrant virtual machines 2018-05-17 17:27:43 +10:00
murata
47b0e00b11 autotest: Added test field location. 2018-05-16 09:57:08 +09:00
Peter Barker
fd4463de68 Tools: add more information on test failure 2018-05-15 20:06:05 +09:00
Peter Barker
23a2ea4084 Tools: autotest: set rc to 1500 on RTL 2018-05-15 20:06:05 +09:00
Guilherme Sousa
dab3b93dc3 autotest: Improved motor failure test
This is based on https://github.com/ArduPilot/ardupilot/pull/6028 by
GuilhermeGSousa
2018-05-15 20:06:05 +09:00
stephen.dade
ce31c55091 Tools - added extra packages for Cygwin environment setup scripts 2018-05-12 10:59:10 +09:00
Peter Barker
167553e8a5 Tools: autotest: tidy usage and simplify vehicle build steps 2018-05-11 13:43:33 +10:00
Peter Barker
f3d6d8e236 Tools: autotest: make Copter tests more reliable
RTL may disarm the vehicle on completion.  We RTL at several times in
the testing, and the subsequent tests were not rearming.  This means we
had a race condition.

We now explicitly wait to be disarmed by the RTL mode, and rearm the
vehicle.

This is an interim patch until we decide whether to make each "test"
self-contained, and have a precondition of "on ground and disarmed".
2018-05-11 08:07:21 +09:00
Peter Barker
4847a61868 Tools: build all vehicles in build-with-disabled-features 2018-05-10 17:55:13 +09:00
Peter Barker
58f4b4b65d Tools: autotest: correct copter auto mission test 2018-05-09 14:23:51 +10:00
Peter Barker
513865ae4d Tools: autotest: flake8 compliance 2018-05-09 14:23:51 +10:00
Karthik Desai
40cd0cd17f Tools: autotest: Use the generic run_test.
If any of the tests throws an exception, it will be caught by the generic test function
that collects all errors and displays them before passing the result to the vehicle testcode.
Hence the name of the test and the exception that got raised get printed in a single
location. This nicely reduces code duplication.
2018-05-09 14:23:45 +10:00
Karthik Desai
7a20dd8b73 Tools: autotest: Added a generic run_test.
This function is called from every vehicle to run a test. If any of the tests throws an exception, it will be caught here, and the name of the test and the exception that got raised will be added to the fail_list
2018-05-09 14:23:40 +10:00
Karthik Desai
b485867db3 Tools: autotest: Check if the mode exists in the dictionary 2018-05-09 14:23:35 +10:00
Karthik Desai
d26c09ccac Tools: autotest: Add and raise exceptions for wait_* helper functions 2018-05-09 14:23:26 +10:00
Dimitri Vasilkov
d2c247bb90 Added to success.txt, added UChicago to locations.txt 2018-05-08 13:42:31 -07:00
Peter Barker
cb2e3424ee Tools: add kilobytes as known unit 2018-05-08 09:36:01 +10:00
Randy Mackay
f8711f70c9 Tools: correct sitl rover-skid default params
steering rate P gain was too high, default is better
2018-05-05 10:13:06 +09:00
Andrew Tridgell
3b143a99bf autotest: removed sitl-debug varient 2018-05-04 18:33:53 +10:00
Andrew Tridgell
9e76555152 autotest: added --no-extra-ports option for sim_vehicle.py 2018-05-02 19:24:20 +10:00
Pierre Kancir
a43183ec14 Tools: sim_vehicle.py: Allow to pass custom param file 2018-04-26 22:40:49 +01:00
Peter Barker
5b03835103 Tools: autotest: correct pattern match in get_parameter 2018-04-18 20:31:55 +09:00
Peter Barker
802e4c6315 Tools: autotest: add tests for relays 2018-04-18 20:31:55 +09:00
Karthik Desai
75ae59c0c8 Autotest: Remove frame initialisation.
This will otherwise override the --frame parameter. The init() function takes care of the initialisation
2018-04-17 23:00:04 +10:00
Pierre Kancir
332560bdf7 Tools: add Skeytech location 2018-04-12 16:34:59 +01:00
murata
0fd71f909c autotest: Add the home ground of ArduPilot drone software engineer training school in Japan. 2018-04-12 14:21:58 +09:00
Randy Mackay
8186ce0d32 Tools: add deg/s/s to valid parameter units 2018-04-05 12:14:59 +09:00
Peter Barker
a03ddc6798 Tools: autotest: correct default parameter names and paths 2018-03-29 09:19:36 +11:00
Michael du Breuil
69cf009898 AutoTest: Update copter battery failsafe test 2018-03-27 22:12:21 +01:00
Peter Barker
dca866c98d Tools: make parameter generation failure clearer 2018-03-26 12:39:23 +11:00
Karthik Desai
9de1813ae6 Autotest: Fix a race condition on the regression tests on Windows 2018-03-23 09:13:37 +09:00
Peter Barker
5aa8890e5b Tools: autotest: fail convertgpx if zip or gpsbabel fail 2018-03-22 09:11:44 +11:00
Peter Barker
338af9e142 Tools: correct misleading comment on per-vehicle parameter descriptions 2018-03-21 21:05:42 +11:00
Peter Barker
15450b956d Tools: sim_vehicle.py: make --tracker work again 2018-03-21 11:46:47 +11:00
chobits
8b72809e37 Tools: fix motor rpm display in flightgear 2018-03-21 08:50:04 +09:00
Peter Barker
8511c2c04b Tools: autotest: factor out apply_parameters_using_sitl
Three of our models start a SITL instance to apply parameters
then restart it so that the parameter changes can take effect.

Factor that functionality out.
2018-03-20 08:39:12 +11:00
Peter Barker
fe3b882bea Tools: autotest: move close method up to common.py 2018-03-20 08:39:12 +11:00
Peter Barker
31ba99e58a Tools: autotest: use buildlogs_path for all buildlogs 2018-03-20 08:39:12 +11:00
Peter Barker
b2cb6e196c Tools: autotest: pull common MAVProxy options into common.py 2018-03-20 08:39:12 +11:00
Peter Barker
b908af10b7 Tools: autotest: remove non-working dump-logs script
We removed CLI from ArduPilot; this script will no longer work
2018-03-20 08:39:12 +11:00
Peter Barker
5fbb385c31 Tools: autotest: avoid exception when using Python3 on MacOSX
File "./Tools/autotest/sim_vehicle.py", line 999, in <module>
location)
File "./Tools/autotest/sim_vehicle.py", line 573, in start_vehicle
run_in_terminal_window(autotest, cmd_name, cmd)
File "./Tools/autotest/sim_vehicle.py", line 476, in
run_in_terminal_window
tabs = p.findall(out)
TypeError: cannot use a string pattern on a bytes-like object
SIM_VEHICLE: Killing tasks
2018-03-19 12:36:55 +11:00
Peter Barker
b348cfa985 Tools: autotest: flake8 compliance
Taking the opportunity to make massive changes while we're destroying
history anyway.
2018-03-15 07:54:21 +09:00
Pierre Kancir
259dda810d Tools: use base class to share code between vehicle tests
Autotest: common.py add new base class and test

Autotest : Common add heartbeat handling on wait_mode timeout

Autotest: common.py add reach_heading_manual and reach_distance_manual

Autotest: new autotest implementation for Rover

Autotest : rover add drive_square test

Autotest: new autotest implementation for Copter

Autotest: new autotest implementation for Plane

Autotest: new autotest implementation for Sub

Autotest: new autotest implementation

Autotest: new autotest implementation for QuadPlane

Autotest : Sub disable GCS_Failsafe on autotest to prevent timeout. The failsafe aren't currently tested on Sub
2018-03-15 07:54:21 +09:00
Peter Barker
b1b978381a Tools: correct quoting in run_in_terminal_window.sh 2018-03-15 07:40:23 +09:00
Peter Barker
5ac5a68d17 Tools: param_parse.py: replace @PREFIX in values with library prefix 2018-03-14 15:44:00 +11:00
chobits
9405c19e85 Tools: fix copter propeller animation in FlightGear multiplayer 2018-03-14 09:42:55 +09:00
Pierre Kancir
b3c2e134f9 Autotest: raise set_rc timeout to prevent mavproxy to miss msg on speedup 2018-03-13 08:40:05 +09:00
Pierre Kancir
4558ef5b1e Autotest: correct Rover expected name in banner 2018-03-13 07:53:41 +09:00
Peter Barker
8b9ce3869c Tools: add bisect-helper.py
This is the start of a tool to help bisect problems with ArduPilot.

Currently it only helps bisect build errors.
2018-03-09 10:38:48 +11:00
Peter Barker
18135b4764 Tools: build-with-disabled-features: update deps 2018-02-27 07:43:13 +09:00
Peter Barker
67257e545e Tools: add how-to-use comment to build-with-disabled-features 2018-02-22 10:18:44 +10:00
Peter Barker
705e6287b9 Tools: add a build-with-disabled-features script 2018-02-22 10:18:44 +10:00
Pierre Kancir
fe36c09bb0 Tools: correct Gazebo-iris param 2018-02-14 09:45:25 +09:00
Peter Barker
50ccbb5d0c Tools: autotest: correct speedup parameter handling 2018-02-13 17:15:05 +11:00
Peter Barker
aeb99c675b Tools: autotest: remove racey mavproxy.expect
The autopilot could well have emitted the statustext before we
start to expect() it
2018-02-13 17:15:05 +11:00
Siddharth Purohit
8f074d52c1 autotest: fix setup of sitl for macosx 2018-01-31 12:22:23 +11:00
Andrew Tridgell
ec81f905f4 autotest: added some new locations for testing 2018-01-15 11:46:02 +11:00
Stephen Dade
aa7389b455 Tools: Fixed Cygwin SITL package names and made install easier for new users 2018-01-09 14:40:43 +00:00
Peter Barker
8a15c69aff Tools: add --fresh-params option to sim_vehicle.py
This will rebuild and use the XML file we generate from our
source code which conveys information about our parameters.

When using this option, "param help PARAMETERNAME" should reflect
changes made to the parameter metadata for PARAMETERNAME.
2018-01-08 14:49:35 +00:00
Patrick José Pereira
560d8b88d8 Tools: Add gazebo-bluerov2 on vehicleinfo.py
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2017-12-26 09:12:56 +11:00
Patrick José Pereira
0e6fc54a0e Tools: Add BATT_MONITOR on sub.parm
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2017-12-21 11:26:51 -05:00
Peter Barker
0b4dcdde35 Tools: param_parse.py: allow whitespace between vehicles
Also add sanity check that the vehicles you're limitting to we know
about
2017-12-16 11:08:35 +11:00
Peter Barker
d1128e7be4 Tools: param_parse.py: replace comments with debug statements 2017-12-16 11:08:35 +11:00
Peter Barker
eeb15d7fd5 Tools: param_parse.py: make comment consistent 2017-12-16 11:08:35 +11:00
Peter Barker
825832be93 Tools: param_parse.py: add a map for vehicle name to a true-name to be used in code
Where true-name is something like "Rover" and the normal name remains
the directory name (e.g. "APMrover2")
2017-12-16 11:08:35 +11:00
Peter Barker
e0125a68e7 Tools: param_parse.py: use single regex for params everywhere 2017-12-16 11:08:35 +11:00
Peter Barker
a45ab6b84c Tools: param_parse.py: correct example comment 2017-12-16 11:08:35 +11:00
Peter Barker
94afaebdb7 Tools: autotest builds each vehicle parameters individually 2017-12-16 11:08:35 +11:00
Peter Barker
ea2c156c7f Tools: param_parse.py: understand tagging of parameters for specific vehicles 2017-12-16 11:08:35 +11:00
Peter Barker
8c516fb29c Tools: autotest: add max-alt fence 2017-12-13 10:04:50 +09:00
Randy Mackay
19af2f7d1d Tools: add decibel as valid param Unit 2017-12-12 07:59:41 +09:00
Andrew Tridgell
20d44136b0 autotest: fixed handling of core files 2017-12-12 08:45:56 +11:00
Peter Barker
75e8424e3f Tools: autotest: add a test for driving a simple RTL mission
In particular, we weren't setting NAV_CONTROLLER_OUTPUT.wp_dist
correctly before a recent commit from Randy
2017-12-09 22:34:07 +11:00
khancyr
fac89ed437 Tools: autotest: move common functionality to common.py
Tools: don't need to pass option on first mavproxy

Tools: reformat common.py and add commun function

Tools: use new common functions

Tools: move functions from rover to commun and reorder

Tools: add and use set_rc function with timeout

Tools: fix style for pep8
2017-12-02 22:28:22 +11:00
Guglie
42e5b180cb Tools: fix sim_vehicle.py terminal tab when using --no-mavproxy 2017-12-02 09:34:10 +11:00
Peter Barker
b7a293ca5f Tools: autotest: move fetching of banner and version
Moved these to before log download.

They fail randomly after log download.
2017-11-28 09:47:46 +11:00
Dr.-Ing. Amilcar Do Carmo Lucas
5c07a44a6d Tools: Fix a race condition on the regression tests on Windows
Added \r\n to the expect() string as recomended at:
http://pexpect.readthedocs.io/en/stable/overview.html#find-the-end-of-line-cr-lf-conventions
this should work on both windows and linux systems

pexpect says it will always do a minimal (non greedy) matching and docs explicitly say that a .+ expression will always return only one character. These lines in autotest are looking for \S+, which, believing the documentation, would only return one character of the log file path.
Now we know that's not true, neither for Linux or for Windows (given the logs from @karthikdesai), so I can only assume that it does a greedy match but only for the characters it has received at the time expect is called.
Apparently, in the machines we are using autotest, it isn't a problem since MAVProxy is likely fast to give its output to pexpect before the expect method is called. On @karthikdesai's machine that wasn't happening since his machine was more or less loaded.
Concluding, this looks like a correct fix in the sense that it extends the regex pattern to wait for the end of line (and probably other places could benefit from it too).
2017-11-22 17:01:05 +09:00
Patrick José Pereira
df6d2659ac autotest: Add RAT Beach for ArduSub
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2017-11-20 17:27:47 +09:00
Peter Barker
2f76f83ab7 Tools: autotest: add and use progress function
Based on work done by khancir
(https://github.com/ArduPilot/ardupilot/pull/6360)

Tools: arduplane.py change print to progress function
Tools: quadplane.py change print to progress function
Tools: ardusub.py change print to progress function
2017-11-14 16:02:05 +11:00
Pierre Kancir
76bb081d60 Tools: autotest: add python headers to scripts
Tools: arduplane.py add python header

Tools: apmrover2.py add python header

Tools: arducopter.py add python header

Tools: ardusub.py add python header

Tools: quadplane.py add python header
2017-11-14 14:47:32 +11:00
Andrew Tridgell
bf9779b63a autotest: default plane simulator to 'plane'
this is good enough for most people and avoids an external dependency
2017-11-06 15:44:26 +11:00
guglie
e741cb28d2 fix wait_unlimited with an infinite sleep loop
this fixes issue #7180
2017-11-06 13:39:59 +11:00
Andrew Tridgell
d55b66efe1 autotest: added HMAS location 2017-10-31 18:02:52 +11:00
Peter Barker
8c03425f37 Tools: enable INS batch logging during Rover autotest 2017-10-27 16:33:45 +11:00
Peter Barker
c498f17bc8 Tools: autotest: fix apmrover2 race condition on banner 2017-10-26 17:20:38 +11:00
Peter Barker
93810ab42a Tools: sim_vehicle.py: clarify comment about vagrant and mavlink-out 2017-10-26 15:03:58 +11:00
Peter Barker
89fa44a224 Tools: sim_vehicle.py: flake8 compliance 2017-10-26 15:03:58 +11:00
Peter Barker
163b354448 Tools: autotest: rover: add test for braking 2017-10-26 14:45:19 +11:00
Peter Barker
47ffad7cdc Tools: autotest: copy generate_manifest aside for build_binaries.py 2017-10-26 07:57:48 +11:00
Peter Barker
e3320ca953 Tools: autotest.py: run build_binaries.py instead of build_binaries.sh
Note we still copy the script sideways.  This is probably not
required for a python script.
2017-10-25 12:02:19 +11:00
Andrew Tridgell
b88f2f1da3 autotest: fixed exception in convertgpx 2017-10-22 16:26:24 +11:00
Andrew Tridgell
71e2c86783 autotest: added more CMAC startup locations
this allows matching to RealFlight positions
2017-10-21 13:01:07 +11:00