# -*- coding: utf-8 -*- ## # Copyright (c) 2019-2020 Diality Inc. - All Rights Reserved. # copyright # THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, # IN PART OR IN WHOLE, # WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. # # file tst_Treatment_BloodDialysateFlowRate # date 2020/02/15 # author Joseph varghese # import names from dialin.ui import utils from dialin.ui.hd_simulator import HDSimulator from dialin.common.msg_defs import RequestRejectReasons from configuration import config def verify_flow_rate(expected_blood_flow_vlue = "_", expected_dialysate_flow_rate = "_"): test.compare(str(waitForObjectExists(names.o_treatment_blood_flow_rate).label), str(expected_blood_flow_vlue)) test.compare(str(waitForObjectExists(names.o_treatment_dialysate_flow_rate).label), str(expected_dialysate_flow_rate)) def verify_blood_dialysate_adjustment(expected_blood_flow_vlue = "_", expected_dialysate_flow_rate = "_"): test.compare(str(waitForObjectExists(names.o_treatment_blood_flow_adjustment).label), str(expected_blood_flow_vlue)) test.compare(str(waitForObjectExists(names.o_treatment_dialysate_flow_adjustment).label), str(expected_dialysate_flow_rate)) def test_treatment_adjustment_blood_dialysate(hd): mouseClick(waitForObject(names.o_treatment_blood_flow_touch_area)) for rejection in range(2,3): hd.cmd_send_treatment_adjust_blood_dialysate_response(accepted = False, reason= rejection, blood_rate = 110, dialysate_flow_rate = 120) verify_blood_dialysate_adjustment(expected_blood_flow_vlue = 110, expected_dialysate_flow_rate = 120) rejection_message = findObject(names.o_treatment_notification_bar) test.compare(config.REJECTION_MESSAGE[rejection], rejection_message.text) snooze(20) def test_blood_flow_rate_and_dialysate(hd): hd.cmd_set_treatment_blood_flow_rate(flow_set_pt = 100, measured_flow = 0, rot_speed = 0, mot_speed = 0, mc_speed = 0, mc_current = 0, pwm = 0, signal_strength = 0) utils.waitForGUI() #delay for fetching effect verify_flow_rate(expected_blood_flow_vlue = 100) hd.cmd_set_treatment_blood_flow_rate(flow_set_pt = 125, measured_flow = 1, rot_speed = 1, mot_speed = 1, mc_speed = 1, mc_current = 1, pwm = 1, signal_strength = 1) utils.waitForGUI() #delay for fetching effect verify_flow_rate(expected_blood_flow_vlue = 125) hd.cmd_set_treatment_blood_flow_rate(flow_set_pt = 175, measured_flow = 1.45, rot_speed = 1.45, mot_speed = 1.45, mc_speed = 1.45, mc_current = 1.45, pwm = 1.45, signal_strength = 1.45) utils.waitForGUI() #delay for fetching effect verify_flow_rate(expected_blood_flow_vlue = 175) hd.cmd_set_treatment_blood_flow_rate(flow_set_pt = 600, measured_flow = 4, rot_speed = 6, mot_speed = 15, mc_speed = 24, mc_current = 6.25, pwm = 12, signal_strength = 8) utils.waitForGUI() #delay for fetching effect verify_flow_rate(expected_blood_flow_vlue = 600) hd.cmd_set_treatment_dialysate_flow_rate(flow_set_pt = 225, measured_flow = 1, rot_speed = 1, mot_speed = 1, mc_speed = 1, mc_current = 1, pwm = 1, signal_strength = 1) utils.waitForGUI() #delay for fetching effect verify_flow_rate(expected_blood_flow_vlue = 600, expected_dialysate_flow_rate = 225 ) hd.cmd_set_treatment_dialysate_flow_rate(flow_set_pt = 500, measured_flow = 110, rot_speed = 125, mot_speed = 135, mc_speed = 145, mc_current = 125, pwm = 185, signal_strength = 155) utils.waitForGUI() #delay for fetching effect verify_flow_rate(expected_blood_flow_vlue = 600, expected_dialysate_flow_rate = 500 ) mouseClick(waitForObject(names.o_treatment_blood_flow_touch_area)) verify_blood_dialysate_adjustment(expected_blood_flow_vlue = 600, expected_dialysate_flow_rate = 500) mouseClick(waitForObject(names.o_treatment_flow_adjustment_close)) hd.cmd_set_treatment_blood_flow_rate(flow_set_pt = 425, measured_flow = 4.25, rot_speed = 1.25, mot_speed = 9, mc_speed = 1.25, mc_current = 12, pwm = 1.25, signal_strength = 1.25) hd.cmd_set_treatment_dialysate_flow_rate(flow_set_pt = 350, measured_flow = 0, rot_speed = 125, mot_speed = 1.25, mc_speed = 1.25, mc_current = 1, pwm = 5, signal_strength = 10) utils.waitForGUI() #delay for fetching effect verify_flow_rate(expected_blood_flow_vlue = 425, expected_dialysate_flow_rate = 350) mouseClick(waitForObject(names.o_treatment_blood_flow_touch_area)) verify_blood_dialysate_adjustment(expected_blood_flow_vlue = 425, expected_dialysate_flow_rate = 350) mouseClick(waitForObject(names.o_treatment_flow_adjustment_close)) def main(): utils.tstStart(__file__) startApplication(config.AUT_NAME) hd = HDSimulator() snooze(2) #navigate to In-treatment section hd.cmd_set_treatment_states_data(sub_mode= 2, uf_state= 0, saline_state=1, heparin_state= 0, rinseback_state= 0, recirculate_state= 0, blood_prime_state= 2, treatment_end_state=0, treatment_stop_state= 0) utils.waitForGUI() #delay for fetching effect test_blood_flow_rate_and_dialysate(hd) test_treatment_adjustment_blood_dialysate(hd) """ hd.cmd_set_treatment_blood_flow_rate(flow_set_pt = 100, measured_flow = 0, rot_speed = 0, mot_speed = 0, mc_speed = 0, mc_current = 0, pwm = 0, signal_strength = 0) verify_blood_flow_rate() verify_blood_flow_rate() snooze(10) hd.cmd_set_treatment_dialysate_flow_rate(flow_set_pt = 121, measured_flow = 100, rot_speed = 112, mot_speed = 113, mc_speed = 114, mc_current = 115, pwm = 116, signal_strength = 117) snooze(10) snooze(10) hd.cmd_send_treatment_adjust_blood_dialysate_response(accepted = False, reason= 8, blood_rate = 110, dialysate_flow_rate = 120) snooze(10) hd.cmd_send_treatment_adjust_blood_dialysate_response(accepted = 0, reason= 1, blood_rate = 100, dialysate_flow_rate = 102) mouseClick(waitForObject(names.o_flows_button)) gotoScreenNtest_Contains_FlowsSection() utils.waitForGUI(1) test.compare(str(waitForObjectExists(names.o_treatmentStart_flowsTouchArea_TreatmentFlows).bloodFlowSetPoint), "0") denaliMessages.setTreatmentBloodFlowRate(350, 1, 1, 1, 1, 1, 1) test.compare(str(waitForObjectExists(names.o_treatmentStart_flowsTouchArea_TreatmentFlows).bloodFlowSetPoint), "350") """ utils.tstDone()