Commit Graph

118 Commits

Author SHA1 Message Date
Randy Mackay
bce3c551e7 Tools: sub set-position-target-global-int sends target once 2020-11-27 10:52:17 +09:00
Randy Mackay
d63fe1eb6c Tools: sub set-position-target uses negative altitude 2020-11-27 10:52:17 +09:00
Peter Barker
ba91cbb270 autotest: correct sub parameter name PSC_VELZ_P, fix test to match 2020-08-30 08:38:35 +10:00
Willian Galvani
0f992ac6a3 Autotest: add test for Sub position hold 2020-08-03 20:19:28 -07:00
Peter Barker
6c9d756f11 autotest: validate context nesting 2020-07-06 14:21:55 +10:00
Peter Barker
b0916231b2 autotest: add tests for log download 2020-05-26 19:32:49 +10:00
Pierre Kancir
81274018c3 Tools: update path for sub test missions files 2020-04-09 09:01:03 +10:00
Peter Barker
5881692e4f autotest: sub: fix altitude-hold for being below target altitude 2020-04-07 14:51:32 +10:00
Pierre Kancir
f24f97e51b Tools: sub: update to new wait functions
Signed-off-by: Pierre Kancir <pierre.kancir.emn@gmail.com>
2020-03-27 22:13:52 +11:00
Patrick José Pereira
98adeafad9 Tools: autotest: Add sub test for MOT_THST_HOVER parameter
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2020-02-05 09:01:33 -05:00
Peter Barker
c4ce6fa385 autotest: Sub: give vehicle 1 second to achieve alt-hold altitude 2020-01-25 14:26:13 +11:00
Peter Barker
6c8975eae3 autotest: make sub altitude test more reliable
momentum + stopping point could both explain unreliability
2020-01-16 14:23:43 +11:00
Peter Barker
54521fbbcb autotest: correct sub output on test failure 2020-01-03 01:18:44 +11:00
Mark Whitehorn
6b9c997a97 Tools: rename SensorConfigErrorLoop test to ConfigErrorLoop 2019-11-08 10:14:34 +11:00
Patrick José Pereira
722e512226 autotest: Sub: Add ALT_HOLD test
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2019-11-06 09:35:06 -08:00
Peter Barker
642935fd43 Tools: random Python cleanups based on lgtm analysis 2019-09-21 22:26:03 +10:00
Pierre Kancir
daaf769055 Tools: add arm/disarm testing on all modes 2019-07-11 11:42:45 +10:00
Peter Barker
899db3d3ac Tools: autotest: add test for sensor config error loop
Tools: autotest: exempt failing vehicles from SensorConfigError test
2019-07-09 10:01:23 +10:00
Peter Barker
3ab9fa48dc Tools: autotest: fix sub reboot detection
the string we were looking for actually gets emitted just before reboot
- sometimes!
2019-03-29 19:07:18 +11:00
Patrick José Pereira
2959d38e0e autotest: Remove magic numbers in ardusub
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2019-03-26 19:39:24 -04:00
Peter Barker
d53f787a14 Tools: factor init up into parent class
Tools: autotest: use speedup 8 for all suites

for reliability
2019-03-13 08:20:20 +11:00
Peter Barker
d48eab893a Tools: autotest: stop swallowing critical messages with get_sim_time() 2019-03-10 21:55:51 +11:00
Peter Barker
19f51813f2 Tools: autotest: include mavproxy output in all vehicle test log files 2019-03-08 23:21:27 +11:00
Peter Barker
50687c9add Tools: autotest: ArmFeatures is common to all vehicles; use inheritted tests 2019-02-28 12:53:07 +11:00
Pierre Kancir
7e12f16be6 Tools: fix lambda test 2019-02-22 08:04:03 +11:00
Peter Barker
9b73c5f1d9 Tools: autotest: correct log download name for Sub 2019-02-20 12:01:43 +11:00
Peter Barker
c0394e9577 Tools: autotest: tidy handling of SITL start position 2019-02-16 19:14:48 +11:00
Peter Barker
6d914f8af3 Tools: autotest: add test for moving sub in guided mode 2019-02-13 10:06:49 +11:00
Peter Barker
6f1f98dc3c Tools: autotest: add assumption run_tests is only called once - remove hasInit 2019-02-09 11:31:17 +11:00
Pierre Kancir
8a7555bf56 Tools: autotest: fix up the arming tests
Tools: unify arm function failure message

Tools: get autodisarm time from parameter for autodisarm test

Tools: disable autodisarm for arm/disarm tests.

Tools: fix interlock channel for heli

Tools: simplify arming_test sub exclusion

Tools: fix empty string in progress

Tools: add back arming test to plane

Tools: allow single test run on Sub

Tools: remove old comments on autotest common

Tools: add vehicle type getter function

Tools: make get_rudder_channel abstract method

Tools: common make get_disarm_delay abstract method

Tools: make set_autodisarm_delay abstract method

Tools: rename set_throttle_zero to zero_throttle and use it

Tools: common.py remove unnecessary exception

Tools: subclass vehicle type
2019-02-09 10:04:57 +11:00
Peter Barker
36ad5d44bd Tools: autotest: convert ArduSub over to new tests framework 2018-12-18 10:06:09 +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
ec288cd867 Tools: autotest: make reboot detection more reliable 2018-12-14 09:48:17 +11: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
2157999307 Tools: autotest: add tests for gripper mission items 2018-10-30 15:37:18 +11: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
Pierre Kancir
2f9f793ccf Tools: add arm and disarm tests 2018-08-15 16:38:20 +10:00
Pierre Kancir
579d471e98 Tools: use set_parameter instead of mavproxy directly 2018-08-15 10:16:13 +10:00
Peter Barker
af37e10126 Tools: autotest: factor out starting of our our mavlink connection 2018-08-04 10:07:22 +10:00
Pierre Kancir
a930822d9d Tools: unify exception on os.link 2018-08-03 08:40:33 +10: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
fa19c3a680 Tools: autotest: fix sub autotest 2018-07-04 14:48:41 +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
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
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
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
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
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
1b7122d733 Tools: add a --speedup parameter to autotest to control speed of all sims 2017-08-29 22:49:40 +01:00
Miguel Arroyo
38297c4d19 Tools: Adds GDBServer with screen option for debugging 2017-08-24 21:37:06 +10:00
Peter Barker
c383d64954 Tools: ardusub.py: increase timeout to allow Valgrind to pass 2017-07-20 15:45:15 +10:00
Jacob Walser
b1906d6c04 autotest: (Sub) only execute one circle instead of four 2017-04-07 14:47:48 -04:00
Jacob Walser
82cebe47dc autotest: (Sub) dont wait_alititude after mission 2017-04-06 14:06:46 -04:00
Jacob Walser
52d2ccaa29 autotest: Fix Sub RCInput channels 2017-04-06 13:52:29 -04:00
Jacob Walser
8c64728ffd autotest: Add auto mission to Sub autotest 2017-03-10 15:46:30 +11:00
Jacob Walser
ec15f0fee5 autotest: Add Sub 2017-02-25 17:50:18 +11:00