diff --git a/autopts/pybtp/btp/mesh.py b/autopts/pybtp/btp/mesh.py index 60e708ce37..0f16683f9e 100644 --- a/autopts/pybtp/btp/mesh.py +++ b/autopts/pybtp/btp/mesh.py @@ -490,7 +490,7 @@ def mesh_input_string(string): iutctl.btp_socket.send_wait_rsp(*MESH['input_str'], data=data) -def mesh_iv_update_test_mode(enable): +def mesh_iv_update_test_mode(enable, auto_disable = False): logging.debug("%s", mesh_iv_update_test_mode.__name__) iutctl = get_iut() @@ -500,6 +500,11 @@ def mesh_iv_update_test_mode(enable): else: data = bytearray(struct.pack(">>>>>>>>>>>>> turn off test mode {case}") + btp.mesh_iv_update_test_mode(False) + return True @@ -1049,7 +1056,7 @@ def hdl_wid_220(_: WIDParams): return True -def hdl_wid_221(_: WIDParams): +def hdl_wid_221(param: WIDParams): """ Implements: IUT_READY_FOR_UPDATE_IN_PROGRESS_SECURE_NETWORK_BEACON description: The Lower Tester will advertise a new Secure Network beacon @@ -1058,8 +1065,16 @@ def hdl_wid_221(_: WIDParams): """ stack = get_stack() + auto_disable = False + + test_cases = ['MESH/NODE/IVU/BI-01', 'MESH/NODE/IVU/BI-07'] + for case in test_cases: + if case in param.test_case_name: + auto_disable = True + break + if not stack.mesh.is_iv_test_mode_enabled.data: - btp.mesh_iv_update_test_mode(True) + btp.mesh_iv_update_test_mode(True, auto_disable) return True