Skip to content

Commit c35ac51

Browse files
committed
autotest: add autotest for param-set-filter.lua applet
1 parent 69ae470 commit c35ac51

File tree

1 file changed

+45
-0
lines changed

1 file changed

+45
-0
lines changed

Tools/autotest/arducopter.py

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13882,6 +13882,50 @@ def PLDNoParameters(self):
1388213882
self.set_parameter('SIM_PLD_ENABLE', 1)
1388313883
self.wait_statustext('Set SIM_PLD_LAT, SIM_PLD_LAT and SIM_PLD_ALT')
1388413884

13885+
def LuaParamSet(self):
13886+
'''test param-set.lua applet'''
13887+
self.install_applet_script_context("param-set.lua")
13888+
self.set_parameters({
13889+
'SCR_ENABLE': 1,
13890+
})
13891+
self.reboot_sitl()
13892+
13893+
self.wait_ready_to_arm() # scripts will be ready by now!
13894+
self.start_subtest("set RTL_ALT freely")
13895+
self.set_parameter("RTL_ALT", 23)
13896+
self.set_parameter("RTL_ALT", 28)
13897+
13898+
self.start_subtest("Unable to set DISARM_DELAY freely")
13899+
self.context_push()
13900+
self.context_collect('STATUSTEXT')
13901+
old_disarm_delay_value = self.get_parameter('DISARM_DELAY')
13902+
self.send_set_parameter_direct('DISARM_DELAY', 78)
13903+
self.wait_statustext('param-set: param set denied (DISARM_DELAY)', check_context=True)
13904+
self.assert_parameter_value('DISARM_DELAY', old_disarm_delay_value)
13905+
self.context_pop()
13906+
13907+
self.start_subtest("Disabling applet via parameter should allow freely setting DISARM_DELAY")
13908+
self.set_parameter("PARAM_SET_ENABLE", 0)
13909+
self.set_parameter("DISARM_DELAY", 56)
13910+
13911+
self.start_subtest("Re-enabling applet via parameter should stop freely setting DISARM_DELAY")
13912+
self.context_push()
13913+
self.context_collect('STATUSTEXT')
13914+
self.set_parameter("PARAM_SET_ENABLE", 1)
13915+
old_disarm_delay_value = self.get_parameter('DISARM_DELAY')
13916+
self.send_set_parameter_direct('DISARM_DELAY', 78)
13917+
self.wait_statustext('param-set: param set denied (DISARM_DELAY)', check_context=True)
13918+
self.assert_parameter_value('DISARM_DELAY', old_disarm_delay_value)
13919+
self.context_pop()
13920+
13921+
self.start_subtest("Ensure that parameter values are persistent")
13922+
self.set_parameter('DISARM_DELAY', 111)
13923+
self.reboot_sitl()
13924+
self.assert_parameter_value('DISARM_DELAY', 111)
13925+
13926+
# very bad things happen if we don't turn things off at the end..
13927+
self.set_parameter("PARAM_SET_ENABLE", 0)
13928+
1388513929
def do_land(self):
1388613930
self.change_mode('LAND')
1388713931
self.wait_disarmed()
@@ -13896,6 +13940,7 @@ def tests2b(self): # this block currently around 9.5mins here
1389613940
self.DynamicRpmNotchesRateThread,
1389713941
self.PIDNotches,
1389813942
self.StaticNotches,
13943+
self.LuaParamSet,
1389913944
self.RefindGPS,
1390013945
Test(self.GyroFFT, attempts=1, speedup=8),
1390113946
Test(self.GyroFFTHarmonic, attempts=4, speedup=8),

0 commit comments

Comments
 (0)