Peter Barker
584013de58
Tools: autotest: correct debug for precision
2019-02-07 08:50:08 +11:00
Peter Barker
657e1bee5a
Tools: autotest: use absolute path for rover avoidance fence
...
This stops us making the assumption MAVProxy's cwd is the ArduPilot git
root
2019-02-06 09:32:10 +11:00
Peter Barker
fa37ad344b
Tools: autotest: refactor setting of rc defaults
2019-02-04 08:00:07 +11:00
Peter Barker
2834fd8017
Tools: autotest: add test for channel override cancel
2019-02-01 11:48:01 +11:00
Peter Barker
7aa1d51585
Tools: autotest: move balancebot to new tests structure
2018-12-18 10:06:09 +11:00
cclauss
89be497897
Tools: Undefined name: 'AutoTestTimeoutException'
...
[flake8](http://flake8.pycqa.org ) testing of https://github.com/ArduPilot/ardupilot on Python 3.7.1
$ __flake8 . --count --select=E901,E999,F821,F822,F823 --show-source --statistics__
```
./Tools/autotest/apmrover2.py:688:27: F821 undefined name 'AutoTestTimeoutException'
raise AutoTestTimeoutException("Did not reach speed")
^
./Tools/autotest/apmrover2.py:717:27: F821 undefined name 'AutoTestTimeoutException'
raise AutoTestTimeoutException("Did not stop")
^
2 F821 undefined name 'AutoTestTimeoutException'
2
```
2018-12-17 17:53:22 +00:00
Peter Barker
28b0267b6c
Tools: autotest: add timeout on Rover test_rc_overrides
2018-12-15 21:38:48 +11:00
Peter Barker
686bfc367e
Tools: autotest: tee MAVProxy output to per-test file
2018-12-15 17:11:44 +11:00
Peter Barker
9eae7857dd
Tools: autotest: make Rover use new tests framework
2018-12-15 10:02:11 +11:00
Peter Barker
10c27e07d4
Tools: autotest: make aux switch test more reliable
2018-12-15 10:02:11 +11:00
Peter Barker
31d6daa1ae
Tools: auotest: add test to ensure components are accepted if SYSID_ENFORCE
2018-12-14 12:44:31 +11:00
Peter Barker
da1f04e78c
Tools: autotest: add a test for SYSID_ENFORCE
2018-12-14 12:44:31 +11:00
Peter Barker
e6c30f6405
Tools: autotest: use change_mode in apmrover2 for changing modes
2018-12-14 11:10:41 +11:00
Peter Barker
a320a54f66
Tools: autotest: new wait_heartbeat raises exception if none received
2018-12-14 11:10:41 +11:00
Peter Barker
984ce514a7
Tools: autotest: make Rover tests stand-alone
2018-12-12 13:46:27 +11:00
Peter Barker
0d34052cef
Tools: autotest: move code up
2018-12-10 12:52:41 +09:00
Peter Barker
aff81d6f76
Tools: autotest: add test for SET_MESSAGE_INTERVAL
2018-12-10 12:52:41 +09:00
Peter Barker
88a003edd9
Tools: autotest: flake8 compliance
2018-11-24 08:30:02 +11:00
Peter Barker
f84370bb04
Tools: autotest: consolidate mission-loading functions
...
Also add sanity checks for mission loading
Tools: autotest: add missing import for arduplane.py
2018-11-16 10:06:25 +11:00
Andrew Tridgell
6b5088207b
autotest: upload failed CI logs to autotest server
2018-11-10 21:23:02 +11:00
Peter Barker
f290a72d9c
Tools: autotest: add test for camera trigger distance
2018-10-30 15:37:18 +11:00
Peter Barker
bb5aa4d195
Tools: add test for proximity avoidance switch
2018-10-30 12:10:42 +11:00
Peter Barker
a66cc52573
Tools: autotest: provide description of exceptions in constructors
2018-10-19 08:52:44 +11:00
Pierre Kancir
55f4be0515
Tools: make do_set_mode function more generic
2018-10-03 16:57:01 +10:00
Peter Barker
af510801f1
Tools: autotest: use RC_CHANNELS rather than RC_CHANNELS_RAW
2018-09-12 10:06:36 +10:00
Peter Barker
6e44ea13d4
Tools: autotest: do not arm vehicle before flaps test
2018-09-07 23:18:43 +10:00
Pierre Kancir
d8c53bbd9c
Tools: remove dependency on mavproxy for cmd_long based functions
2018-09-07 11:20:03 +10:00
Peter Barker
5d317a8ef7
Tools: autotest: clear Rover waypoints before toggling them in
2018-09-06 15:29:28 +10:00
Peter Barker
197edca772
Tools: expand test to cover use of disable-gcs-rc-overrides switch
2018-09-05 11:54:32 +10:00
Peter Barker
5c7e21d38f
Tools: autotest: add test for clearing waypoints
2018-09-04 10:32:26 +10:00
Pierre Kancir
f6cc934678
Tools: pep8 corrections + correct variable shadowing
2018-08-27 17:08:47 +10:00
Pierre Kancir
cc8aca1619
Tools: various fixes for Copter tests
...
Tools: correct altitude check
Tools: correct tests syntax
Tools: add autotest syntax check on common
Tools: search for syntax mistake on autotest lambda
Tools: put copter in hover trottle to prevent crash
Tools: reboot after baterry failsafe test
Tools: copter takeoff wait_ready_to_arm before arming
Tools: arm copter after land on RTL
Tools: reset copter battery voltage after battery failsafe
2018-08-21 20:41:09 +10:00
Peter Barker
2a174a5dac
Tools: add test for Sprayer-on-Rover
2018-08-17 15:33:35 +09:00
Peter Barker
0f7c837d2d
Tools: autotest: increase timeout for RTL test
...
BalanceBot is slow!
2018-08-16 16:06:00 +10:00
Peter Barker
4c89fa4b75
Tools: autotest: add tests for changing modes via MAVProxy mode command
2018-08-16 16:05:19 +10:00
Pierre Kancir
2f9f793ccf
Tools: add arm and disarm tests
2018-08-15 16:38:20 +10:00
Peter Barker
af37e10126
Tools: autotest: factor out starting of our our mavlink connection
2018-08-04 10:07:22 +10:00
Peter Barker
dab93750a0
Tools: add test for rc overrides
2018-08-03 13:07:50 +10:00
Pierre Kancir
a930822d9d
Tools: unify exception on os.link
2018-08-03 08:40:33 +10:00
Andrew Tridgell
6090820bdc
autotest: disable the Drive Brake test in rover
...
this test fails far too often
2018-08-01 14:03:26 +10:00
Peter Barker
b8030816b8
Tools: autotest: add tests for mode changes for Copter and Rover
2018-08-01 12:11:30 +09:00
Michael du Breuil
90216f7cb6
Tools: Slow rover test down for CI, remove unneeded variable
2018-08-01 09:19:20 +10:00
Peter Barker
6dd8dbeb40
Tools: autotest: add ability to add breakpoints in autotest
2018-07-27 09:58:15 +10:00
Peter Barker
975b8c2e5f
Tools: autotest: use reboot to apply parameter changes; avoid sim restart
...
Previously we stopped the simulation to ensure parameter changes are
applied to the simulated vehicle. We can now reboot the simulated
autopilot, so these patches make use of those changes.
One big advantage is that the --gdb option is in play for the applying
of the parameters to the vehicle.
2018-06-29 10:54:27 +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
Peter Barker
802e4c6315
Tools: autotest: add tests for relays
2018-04-18 20:31:55 +09: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
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
b2cb6e196c
Tools: autotest: pull common MAVProxy options into common.py
2018-03-20 08:39:12 +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
Pierre Kancir
4558ef5b1e
Autotest: correct Rover expected name in banner
2018-03-13 07:53:41 +09: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
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
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
Peter Barker
c498f17bc8
Tools: autotest: fix apmrover2 race condition on banner
2017-10-26 17:20:38 +11:00
Peter Barker
163b354448
Tools: autotest: rover: add test for braking
2017-10-26 14:45:19 +11:00
Peter Barker
5a19301606
Tools: autotest: add a test for setting of modes using CMD_DO_SET_MODE
2017-09-19 01:24:11 +01:00
Peter Barker
78a0298af0
Tools: autotest.py: look at EKF flags to determine armability
2017-09-15 15:57:11 +01:00
Peter Barker
f0096d3c7a
Tools: apmrover2.py: add a test for MAV_CMD_REQUEST_AUTOPILOT_CAPABILITIES
2017-08-30 15:54:47 +01:00
Peter Barker
324d9f3c7d
Tools: apmrover2.py: add a test for MAV_CMD_DO_GET_BANNER
2017-08-30 15:54:47 +01:00
Peter Barker
1b7122d733
Tools: add a --speedup parameter to autotest to control speed of all sims
2017-08-29 22:49:40 +01:00
Francisco Ferreira
415cb41c7f
Tools: add gdbserver option to Rover autotest
...
commit 38297c4
missed changing Rover file
2017-08-25 02:38:12 +01:00
Peter Barker
cb81f9c8b3
Tools: allow Rover to use inheritted config files
2017-07-05 17:29:55 +01:00
Peter Barker
05ea121d0c
Tools: autotest: disarm rover before downloading logs
2017-06-27 03:10:43 +01:00
Peter Barker
817efe9b6d
Tools: expect message for EKF readiness rather than sleeping
...
This solves a problem for me when running Valgrind as
30s was not sufficient
2017-01-26 16:53:13 +11:00
Pierre Kancir
bec09b9a57
autotest: python3 support
2016-11-09 11:48:22 -03:00
Pierre Kancir
5786d66ea1
autotest: simplify start_sitl
2016-11-09 11:48:22 -03:00
Pierre Kancir
9e1ffcae5d
Tools: update python coding style
...
Tools: update PrintVersion.py coding style
autotest: update python coding style
pysim: update python coding style
jsb_sim: update Python coding style
param_metadata: update Python coding style
2016-09-01 13:05:11 +10:00
Lucas De Marchi
f0590581e4
autotest: standardize name of param files
...
Try to make the various param files to follow similar namings:
- Lowercase the few ones using uppercase
- Use dash to separate name components
- Start with "copter", "plane", "rover", etc instead of the mix we
had
- Remove "params" from the filename since it's redundant with the
extension
2016-08-08 10:12:14 -03:00
Pierre Kancir
19d94737a0
autotest: move all default params to default_params directory
2016-08-03 17:44:37 -03:00
priseborough
e0d87bf529
autotest: Increase startup wait time to allow EKF and GPS checks to pass
2016-07-19 12:16:48 +10:00
Peter Barker
b23f983459
autotest: add --gdb option to autotest.py
2016-06-27 18:14:55 -03:00
Andrew Tridgell
084a37d4fa
autotest: enable LOG_REPLAY and LOG_DISARMED in autotest
...
this will give us the ability to analyse any EKF errors
2016-05-27 21:23:39 +10:00
Peter Barker
3548f90d3a
autotest: create SIL object to hold valgrind logpath
2016-05-27 08:07:07 -03:00
Peter Barker
7b86a05722
Tools: convert autotest build.X and fly.X to use waf build system
2016-05-27 08:07:07 -03:00
Peter Barker
8774f15b9a
Tools: add valgrind option to autotest.py
2016-04-22 09:42:33 +10:00
Andrew Tridgell
084b607862
autotest: updated string for "Flight plan received"
2015-11-26 12:52:19 +11:00
Grant Morphett
e1b608d56d
autotest: added arming to the Rover autotesting.
2015-11-11 13:39:39 +11:00
Andrew Tridgell
34689cf949
autotest: cope with mavproxy logging msg changes
2015-06-30 14:06:17 +10:00
Andrew Tridgell
fe536a4b89
autotest: use internal copter sim for autotest
2015-05-05 16:56:40 +10:00
Andrew Tridgell
209896afc7
autotest: use builtin rover model for autotest
2015-05-05 16:56:39 +10:00
Andrew Tridgell
9204cab7d5
autotest: fixed rover test
2015-04-30 18:45:38 +10:00
Andrew Tridgell
5f8c05b712
autotest: fixed extraction of defaults
2015-04-20 15:12:51 +10:00
Andrew Tridgell
cf15b4d4fc
autotest: removed use of --nowait option
2015-03-27 18:03:24 -07:00
Andrew Tridgell
45887a5d28
autotest: run rover and copter with synthetic clock
2015-03-22 18:57:43 -07:00
Andrew Tridgell
ccc449db19
autotest: removed the set of SYSID_THISMAV
...
this led to a race condition where some parameters were not loaded as
they were being sent with the wrong system ID
2014-02-18 15:51:25 +11:00
Andrew Tridgell
6121b9c58e
autotest: switched to binary log download over MAVLink
2013-12-28 21:47:12 +11:00
Andrew Tridgell
0c37bcbb10
autotest: don't show console in autotest
2013-09-09 19:55:38 +10:00
Andrew Tridgell
93db4a4a5b
autotest: consider lack of symlinks to be a soft error
...
some people use VMWare shared drives, which don't do hard links
2013-06-24 13:06:54 +10:00
Andrew Tridgell
21436dc1a6
autotest: fixed import of mavwp
2013-06-18 17:02:00 +10:00
Andrew Tridgell
4c9cb461d6
autotest: setup Rover autotest for Sparkfun course
...
this will make it easier to test around the course
2013-05-17 10:37:11 +10:00
Andrew Tridgell
168f76e76c
autotest: added --map option to autotest.py
2013-05-02 20:07:04 +10:00
Andrew Tridgell
9904bcd9aa
autotest: changed mavlink log names to *.tlog
...
easier to view in MP
2013-04-28 15:01:31 +10:00
Andrew Tridgell
5f8c8e87a8
autotest: fixed rover mission completion
2013-03-29 21:19:04 +11:00