|
|
@ -14,16 +14,16 @@ def get_default_params(atype): |
|
|
|
idx = mavproxy.expect(['Please Run Setup', 'Saved [0-9]+ parameters to (\S+)']) |
|
|
|
idx = mavproxy.expect(['Please Run Setup', 'Saved [0-9]+ parameters to (\S+)']) |
|
|
|
if idx == 0: |
|
|
|
if idx == 0: |
|
|
|
# we need to restart it after eeprom erase |
|
|
|
# we need to restart it after eeprom erase |
|
|
|
mavproxy.close() |
|
|
|
util.pexpect_close(mavproxy) |
|
|
|
sil.close() |
|
|
|
util.pexpect_close(sil) |
|
|
|
sil = util.start_SIL(atype) |
|
|
|
sil = util.start_SIL(atype) |
|
|
|
mavproxy = util.start_MAVProxy_SIL(atype) |
|
|
|
mavproxy = util.start_MAVProxy_SIL(atype) |
|
|
|
idx = mavproxy.expect('Saved [0-9]+ parameters to (\S+)') |
|
|
|
idx = mavproxy.expect('Saved [0-9]+ parameters to (\S+)') |
|
|
|
parmfile = mavproxy.match.group(1) |
|
|
|
parmfile = mavproxy.match.group(1) |
|
|
|
dest = util.reltopdir('../buildlogs/%s.defaults.txt' % atype) |
|
|
|
dest = util.reltopdir('../buildlogs/%s.defaults.txt' % atype) |
|
|
|
shutil.copy(parmfile, dest) |
|
|
|
shutil.copy(parmfile, dest) |
|
|
|
mavproxy.close() |
|
|
|
util.pexpect_close(mavproxy) |
|
|
|
sil.close() |
|
|
|
util.pexpect_close(sil) |
|
|
|
print("Saved defaults for %s to %s" % (atype, dest)) |
|
|
|
print("Saved defaults for %s to %s" % (atype, dest)) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -44,8 +44,8 @@ def dump_logs(atype): |
|
|
|
mavproxy.send("dump %u\n" % (i+1)) |
|
|
|
mavproxy.send("dump %u\n" % (i+1)) |
|
|
|
mavproxy.expect("logs enabled:") |
|
|
|
mavproxy.expect("logs enabled:") |
|
|
|
mavproxy.expect("Log]") |
|
|
|
mavproxy.expect("Log]") |
|
|
|
mavproxy.close() |
|
|
|
util.pexpect_close(mavproxy) |
|
|
|
sil.close() |
|
|
|
util.pexpect_close(sil) |
|
|
|
log.close() |
|
|
|
log.close() |
|
|
|
print("Saved log for %s to %s" % (atype, logfile)) |
|
|
|
print("Saved log for %s to %s" % (atype, logfile)) |
|
|
|
|
|
|
|
|
|
|
@ -88,31 +88,35 @@ def skip_step(step): |
|
|
|
return True |
|
|
|
return True |
|
|
|
return False |
|
|
|
return False |
|
|
|
|
|
|
|
|
|
|
|
# kill any previous instance |
|
|
|
def run_tests(steps): |
|
|
|
util.kill('ArduCopter.elf') |
|
|
|
'''run a list of steps''' |
|
|
|
util.kill('ArduPilot.elf') |
|
|
|
|
|
|
|
|
|
|
|
test_prerequesites() |
|
|
|
test_prerequesites() |
|
|
|
for step in steps: |
|
|
|
|
|
|
|
if skip_step(step): |
|
|
|
for step in steps: |
|
|
|
continue |
|
|
|
if skip_step(step): |
|
|
|
if step == 'build.ArduPlane': |
|
|
|
continue |
|
|
|
util.build_SIL('ArduPlane') |
|
|
|
if step == 'build.ArduPlane': |
|
|
|
elif step == 'build.ArduCopter': |
|
|
|
util.build_SIL('ArduPlane') |
|
|
|
util.build_SIL('ArduCopter') |
|
|
|
elif step == 'build.ArduCopter': |
|
|
|
elif step == 'defaults.ArduPlane': |
|
|
|
util.build_SIL('ArduCopter') |
|
|
|
get_default_params('ArduPlane') |
|
|
|
elif step == 'defaults.ArduPlane': |
|
|
|
elif step == 'defaults.ArduCopter': |
|
|
|
get_default_params('ArduPlane') |
|
|
|
get_default_params('ArduCopter') |
|
|
|
elif step == 'defaults.ArduCopter': |
|
|
|
elif step == 'logs.ArduPlane': |
|
|
|
get_default_params('ArduCopter') |
|
|
|
dump_logs('ArduPlane') |
|
|
|
elif step == 'logs.ArduPlane': |
|
|
|
elif step == 'logs.ArduCopter': |
|
|
|
dump_logs('ArduPlane') |
|
|
|
dump_logs('ArduCopter') |
|
|
|
elif step == 'logs.ArduCopter': |
|
|
|
elif step == 'fly.ArduCopter': |
|
|
|
dump_logs('ArduCopter') |
|
|
|
arducopter.fly_ArduCopter() |
|
|
|
elif step == 'fly.ArduCopter': |
|
|
|
else: |
|
|
|
arducopter.fly_ArduCopter() |
|
|
|
raise RuntimeError("Unknown step %s" % step) |
|
|
|
else: |
|
|
|
|
|
|
|
raise RuntimeError("Unknown step %s" % step) |
|
|
|
try: |
|
|
|
|
|
|
|
run_tests(steps) |
|
|
|
util.kill('ArduCopter.elf') |
|
|
|
except KeyboardInterrupt: |
|
|
|
util.kill('ArduPilot.elf') |
|
|
|
util.pexpect_close_all() |
|
|
|
|
|
|
|
except Exception: |
|
|
|
|
|
|
|
# make sure we kill off any children |
|
|
|
|
|
|
|
util.pexpect_close_all() |
|
|
|
|
|
|
|
raise |
|
|
|