Index: dialin/dg/hd_proxy.py =================================================================== diff -u -r287af45040e35882e001fb3ea835f304007870c4 -r3a4a3ca071c818acd40918e5d7a2400461e7cedb --- dialin/dg/hd_proxy.py (.../hd_proxy.py) (revision 287af45040e35882e001fb3ea835f304007870c4) +++ dialin/dg/hd_proxy.py (.../hd_proxy.py) (revision 3a4a3ca071c818acd40918e5d7a2400461e7cedb) @@ -220,7 +220,7 @@ message = DenaliMessage.build_message(channel_id=DenaliChannels.dialin_to_dg_ch_id, message_id=MsgIds.MSG_ID_DG_START_STOP_HEAT_DISINFECT.value, payload=payload) - print("Starting heat disinfection process") + self.logger.debug("Starting heat disinfection process") received_message = self.can_interface.send(message) def cmd_stop_heat_disinfection(self): @@ -236,7 +236,7 @@ message = DenaliMessage.build_message(channel_id=DenaliChannels.dialin_to_dg_ch_id, message_id=MsgIds.MSG_ID_DG_START_STOP_HEAT_DISINFECT.value, payload=payload) - print("Stopping heat disinfection process") + self.logger.debug("Stopping heat disinfection process") received_message = self.can_interface.send(message) def cmd_stop_primary_heater(self): @@ -250,5 +250,5 @@ message = DenaliMessage.build_message(channel_id=DenaliChannels.dialin_to_dg_ch_id, message_id=MsgIds.MSG_ID_HD_START_STOP_DG_TRIMMER_HEATER.value, payload=payload) - print("Stopping heat disinfection process") + self.logger.debug("Stopping heat disinfection process") self.can_interface.send(message, 0) Index: dialin/hd/dialysate_outlet_flow.py =================================================================== diff -u -r7b56c88df3b09225436d0564d0f31447d785b743 -r3a4a3ca071c818acd40918e5d7a2400461e7cedb --- dialin/hd/dialysate_outlet_flow.py (.../dialysate_outlet_flow.py) (revision 7b56c88df3b09225436d0564d0f31447d785b743) +++ dialin/hd/dialysate_outlet_flow.py (.../dialysate_outlet_flow.py) (revision 3a4a3ca071c818acd40918e5d7a2400461e7cedb) @@ -315,7 +315,7 @@ self.logger.debug("Timeout!!!!") return False - def cmd_dialysate_outlet_pump_measured_current_override(self, curr, reset=NO_RESET): + def cmd_dialysate_outlet_pump_measured_motor_controller_current_override(self, curr, reset=NO_RESET): """ Constructs and sends the measured dialysate outlet pump motor current override command Constraints: @@ -354,7 +354,7 @@ self.logger.debug("Timeout!!!!") return False - def cmd_dialysate_outlet_pump_measured_speed_override(self, speed, reset=NO_RESET): + def cmd_dialysate_outlet_pump_measured_motor_speed_override(self, speed, reset=NO_RESET): """ Constructs and sends the measured dialysate outlet pump motor speed override \n command. Index: dialin/hd/treatment.py =================================================================== diff -u -r7b56c88df3b09225436d0564d0f31447d785b743 -r3a4a3ca071c818acd40918e5d7a2400461e7cedb --- dialin/hd/treatment.py (.../treatment.py) (revision 7b56c88df3b09225436d0564d0f31447d785b743) +++ dialin/hd/treatment.py (.../treatment.py) (revision 3a4a3ca071c818acd40918e5d7a2400461e7cedb) @@ -276,21 +276,20 @@ message_id=MsgIds.MSG_ID_HD_SET_PARAMETER_TREATMENT_PARAMETER.value, payload=payload) - print("setting blood flow rate") + self.logger.debug("setting blood flow rate") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) str_flo = str(flow) - print("Blood flow rate parameter set to " + str_flo + " mL/min: " + + self.logger.debug("Blood flow rate parameter set to " + str_flo + " mL/min: " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_set_treatment_param_dialysate_flow_rate(self, flow): @@ -314,21 +313,21 @@ message_id=MsgIds.MSG_ID_HD_SET_PARAMETER_TREATMENT_PARAMETER.value, payload=payload) - print("setting dialysate flow rate") + self.logger.debug("setting dialysate flow rate") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) str_flo = str(flow) - print("Dialysate flow rate parameter set to " + str_flo + " mL/min: " + + self.logger.debug("Dialysate flow rate parameter set to " + str_flo + " mL/min: " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_set_treatment_param_duration(self, duration): @@ -350,21 +349,21 @@ message_id=MsgIds.MSG_ID_HD_SET_PARAMETER_TREATMENT_PARAMETER.value, payload=payload) - print("setting treatment duration") + self.logger.debug("setting treatment duration") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) str_dur = str(duration) - print("Treatment duration parameter set to " + str_dur + " min: " + + self.logger.debug("Treatment duration parameter set to " + str_dur + " min: " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_set_heparin_pre_stop_time(self, pre_stop): @@ -386,21 +385,21 @@ message_id=MsgIds.MSG_ID_HD_SET_PARAMETER_TREATMENT_PARAMETER.value, payload=payload) - print("setting Heparin pre-stop time") + self.logger.debug("setting Heparin pre-stop time") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) str_sto = str(pre_stop) - print("Heparin pre-stop time parameter set to " + str_sto + " min: " + + self.logger.debug("Heparin pre-stop time parameter set to " + str_sto + " min: " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_set_saline_bolus_volume(self, volume): @@ -422,21 +421,21 @@ message_id=MsgIds.MSG_ID_HD_SET_PARAMETER_TREATMENT_PARAMETER.value, payload=payload) - print("setting saline bolus volume") + self.logger.debug("setting saline bolus volume") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) str_vol = str(volume) - print("Saline bolus volume parameter set to " + str_vol + " mL: " + + self.logger.debug("Saline bolus volume parameter set to " + str_vol + " mL: " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_set_acid_concentrate(self, acid): @@ -461,21 +460,21 @@ message_id=MsgIds.MSG_ID_HD_SET_PARAMETER_TREATMENT_PARAMETER.value, payload=payload) - print("setting acid concentrate parameter") + self.logger.debug("setting acid concentrate parameter") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) str_acd = str(acid) - print("Acid concentrate parameter set to " + str_acd + ": " + + self.logger.debug("Acid concentrate parameter set to " + str_acd + ": " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_set_bicarb_concentrate(self, bicarb): @@ -498,21 +497,21 @@ message_id=MsgIds.MSG_ID_HD_SET_PARAMETER_TREATMENT_PARAMETER.value, payload=payload) - print("setting bicarbonate concentrate parameter") + self.logger.debug("setting bicarbonate concentrate parameter") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) str_bic = str(bicarb) - print("Bicarbonate concentrate parameter set to " + str_bic + ": " + + self.logger.debug("Bicarbonate concentrate parameter set to " + str_bic + ": " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_set_dialyzer_type(self, dialyzer): @@ -538,21 +537,21 @@ message_id=MsgIds.MSG_ID_HD_SET_PARAMETER_TREATMENT_PARAMETER.value, payload=payload) - print("setting dialyzer type parameter") + self.logger.debug("setting dialyzer type parameter") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) str_dia = str(dialyzer) - print("Dialyzer type parameter set to " + str_dia + ": " + + self.logger.debug("Dialyzer type parameter set to " + str_dia + ": " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_set_bp_measurement_interval(self, intvl): @@ -574,21 +573,21 @@ message_id=MsgIds.MSG_ID_HD_SET_PARAMETER_TREATMENT_PARAMETER.value, payload=payload) - print("setting BP measurement interval parameter") + self.logger.debug("setting BP measurement interval parameter") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) str_bpi = str(intvl) - print("BP measurement interval parameter set to " + str_bpi + ": " + + self.logger.debug("BP measurement interval parameter set to " + str_bpi + ": " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_set_rinseback_flow_rate(self, flow): @@ -610,21 +609,21 @@ message_id=MsgIds.MSG_ID_HD_SET_PARAMETER_TREATMENT_PARAMETER.value, payload=payload) - print("setting rinseback flow rate parameter") + self.logger.debug("setting rinseback flow rate parameter") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) str_flo = str(flow) - print("Rinseback flow rate parameter set to " + str_flo + ": " + + self.logger.debug("Rinseback flow rate parameter set to " + str_flo + ": " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_set_arterial_pressure_low_alarm_limit(self, pres): @@ -646,21 +645,21 @@ message_id=MsgIds.MSG_ID_HD_SET_PARAMETER_TREATMENT_PARAMETER.value, payload=payload) - print("setting arterial pressure lower alarm limit parameter") + self.logger.debug("setting arterial pressure lower alarm limit parameter") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) str_pre = str(pres) - print("Arterial pressure lower alarm limit parameter set to " + str_pre + ": " + + self.logger.debug("Arterial pressure lower alarm limit parameter set to " + str_pre + ": " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_set_arterial_pressure_high_alarm_limit(self, pres): @@ -682,21 +681,21 @@ message_id=MsgIds.MSG_ID_HD_SET_PARAMETER_TREATMENT_PARAMETER.value, payload=payload) - print("setting arterial pressure upper alarm limit parameter") + self.logger.debug("setting arterial pressure upper alarm limit parameter") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) str_pre = str(pres) - print("Arterial pressure upper alarm limit parameter set to " + str_pre + ": " + + self.logger.debug("Arterial pressure upper alarm limit parameter set to " + str_pre + ": " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_set_venous_pressure_low_alarm_limit(self, pres): @@ -718,21 +717,21 @@ message_id=MsgIds.MSG_ID_HD_SET_PARAMETER_TREATMENT_PARAMETER.value, payload=payload) - print("setting venous pressure lower alarm limit parameter") + self.logger.debug("setting venous pressure lower alarm limit parameter") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) str_pre = str(pres) - print("Venous pressure lower alarm limit parameter set to " + str_pre + ": " + + self.logger.debug("Venous pressure lower alarm limit parameter set to " + str_pre + ": " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_set_venous_pressure_high_alarm_limit(self, pres): @@ -754,21 +753,21 @@ message_id=MsgIds.MSG_ID_HD_SET_PARAMETER_TREATMENT_PARAMETER.value, payload=payload) - print("setting venous pressure upper alarm limit parameter") + self.logger.debug("setting venous pressure upper alarm limit parameter") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) str_pre = str(pres) - print("Venous pressure upper alarm limit parameter set to " + str_pre + ": " + + self.logger.debug("Venous pressure upper alarm limit parameter set to " + str_pre + ": " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_set_heparin_dispense_rate(self, rate): @@ -790,21 +789,21 @@ message_id=MsgIds.MSG_ID_HD_SET_PARAMETER_TREATMENT_PARAMETER.value, payload=payload) - print("setting Heparin dispense rate parameter") + self.logger.debug("setting Heparin dispense rate parameter") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) str_rat = str(rate) - print("Heparin dispense rate parameter set to " + str_rat + ": " + + self.logger.debug("Heparin dispense rate parameter set to " + str_rat + ": " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_set_heparin_bolus_volume(self, volume): @@ -826,21 +825,21 @@ message_id=MsgIds.MSG_ID_HD_SET_PARAMETER_TREATMENT_PARAMETER.value, payload=payload) - print("setting Heparin bolus volume parameter") + self.logger.debug("setting Heparin bolus volume parameter") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) str_vol = str(volume) - print("Heparin bolus volume parameter set to " + str_vol + ": " + + self.logger.debug("Heparin bolus volume parameter set to " + str_vol + ": " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_set_dialysate_temperature(self, temp): @@ -862,21 +861,21 @@ message_id=MsgIds.MSG_ID_HD_SET_PARAMETER_TREATMENT_PARAMETER.value, payload=payload) - print("setting dialysate temperature parameter") + self.logger.debug("setting dialysate temperature parameter") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) str_tmp = str(temp) - print("Dialysate temperature parameter set to " + str_tmp + ": " + + self.logger.debug("Dialysate temperature parameter set to " + str_tmp + ": " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False def cmd_set_ultrafiltration_volume(self, volume): @@ -898,19 +897,19 @@ message_id=MsgIds.MSG_ID_HD_SET_PARAMETER_TREATMENT_PARAMETER.value, payload=payload) - print("setting ultrafiltration volume parameter") + self.logger.debug("setting ultrafiltration volume parameter") # Send message received_message = self.can_interface.send(message) # If there is content... if received_message is not None: - # print(received_message) + # self.logger.debug(received_message) str_vol = str(volume) - print("Ultrafiltration volume parameter set to " + str_vol + ": " + + self.logger.debug("Ultrafiltration volume parameter set to " + str_vol + ": " + str(received_message['message'][DenaliMessage.PAYLOAD_START_INDEX])) # response payload is OK or not OK return received_message['message'][DenaliMessage.PAYLOAD_START_INDEX] else: - print("Timeout!!!!") + self.logger.debug("Timeout!!!!") return False Index: dialin/ui/hd_simulator.py =================================================================== diff -u -r206d63e4eefb4f17215e8b33a192691099144b42 -r3a4a3ca071c818acd40918e5d7a2400461e7cedb --- dialin/ui/hd_simulator.py (.../hd_simulator.py) (revision 206d63e4eefb4f17215e8b33a192691099144b42) +++ dialin/ui/hd_simulator.py (.../hd_simulator.py) (revision 3a4a3ca071c818acd40918e5d7a2400461e7cedb) @@ -353,7 +353,7 @@ @param response: 0=NO, 1=YES @return: None """ - print("Sending: {0}".format(response)) + self.logger.debug("Sending: {0}".format(response)) payload = integer_to_bytearray(response) payload += integer_to_bytearray(reason) Index: tests/test_ui_proxy.py =================================================================== diff -u -r8ea13ae6dd10732bfcc456798f4785c4d88c95d3 -r3a4a3ca071c818acd40918e5d7a2400461e7cedb --- tests/test_ui_proxy.py (.../test_ui_proxy.py) (revision 8ea13ae6dd10732bfcc456798f4785c4d88c95d3) +++ tests/test_ui_proxy.py (.../test_ui_proxy.py) (revision 3a4a3ca071c818acd40918e5d7a2400461e7cedb) @@ -13,23 +13,59 @@ # @date (original) 21-Aug-2020 # ############################################################################ -import unittest import sys sys.path.append("../..") from dialin.hd.hemodialysis_device import HD +from time import sleep +from dialin.utils.base import AbstractObserver +IP_ADDRESS = "192.168.10.77" -class DGValves(unittest.TestCase): +class Observer(AbstractObserver): + def __init__(self): + self.valid = False - # @unittest.skip("Skipping test_imports") - def test_hd_get_reject_reasons(self): - hd = HD() + def update(self, message): + print(message) + self.valid = message.get("treatment_parameters_valid", False) - i = 0 - for key, value in hd.ui.get_reject_reasons().items(): - self.assertEqual(i, value) - i += 1 +def test_create_treatment(): + hd = HD(log_level="DEBUG") + hd.cmd_hd_software_reset_request() + observer = Observer() + hd.ui.attach(observer) + sleep(1) + if hd.cmd_log_in_to_hd(): + sleep(10) + print("Logged in") + hd.ui.cmd_ui_start_treatment_request(0) + sleep(4) + hd.ui.cmd_set_treatment_parameters(100, 100, 120, 0, 0, 0, 100, 1, 0, 1, 36, -200, -170, -100, 100, 30, 75) + while not observer.valid: + sleep(0.1) + hd.ui.cmd_ui_confirm_treatment_parameters() + sleep(4) + hd.ui.cmd_ui_start_treatment_request(2) + sleep(4) +def test_reset_hd(): + hd = HD(log_level="DEBUG") + hd.cmd_hd_software_reset_request() +def test_get_hd_operation_mode(): + hd = HD(log_level="DEBUG") + observer = Observer() + hd.ui.attach(observer) + if hd.cmd_log_in_to_hd(): + sleep(5) + print(hd.get_operation_mode()) + +def test_clear_all_alarms(): + hd = HD(log_level="DEBUG") + hd.alarms.cmd_clear_all_alarms() + if __name__ == '__main__': - sys.exit(unittest.main(verbosity=2).result.wasSuccessful()) + # test_reset_hd() + # test_create_treatment() + test_clear_all_alarms() + # test_get_hd_operation_mode()