Index: shared/scripts/configuration/config.py =================================================================== diff -u -r1f10d015c98271b65cc894ed4e24d7a3d7f6675f -r151dbbd47b6a62cd0f35d482b23f1b4456115db4 --- shared/scripts/configuration/config.py (.../config.py) (revision 1f10d015c98271b65cc894ed4e24d7a3d7f6675f) +++ shared/scripts/configuration/config.py (.../config.py) (revision 151dbbd47b6a62cd0f35d482b23f1b4456115db4) @@ -93,10 +93,16 @@ POSITIVE_BUFFER = 10 NEGATIVE_BUFFER = -10 -NUM_OF_ALARM_PRIORITIES = 4 # Total number of alarm priorities +#Alarms location +CONFIG_PATH = Path(os.getcwd()) +HOME_DIR_PATH = CONFIG_PATH.parent.parent.parent +ALARMS_CONF_LOCATION = "".join([str(HOME_DIR_PATH),'/Projects/application/resources/settings/Alarms/Alarms.conf']) + +NUM_OF_ALARM_PRIORITIES = 4 # Total number of alarm priorities NUM_OF_MSG_ID = 290 +NUM_OF_MSG_ID = 291 ALARM_ID_NO_ALARM = 0 ALARM_ID_OUT_OF_RANGE = 292 Index: shared/scripts/configuration/strings.py =================================================================== diff -u -r401f9693ca709b00517cf213decbfe5e22e1f96b -r151dbbd47b6a62cd0f35d482b23f1b4456115db4 --- shared/scripts/configuration/strings.py (.../strings.py) (revision 401f9693ca709b00517cf213decbfe5e22e1f96b) +++ shared/scripts/configuration/strings.py (.../strings.py) (revision 151dbbd47b6a62cd0f35d482b23f1b4456115db4) @@ -693,7 +693,302 @@ 291: "Total number of alarms." #Issue 77 - need to remove after issue fix } -ALARM_PRIORITIES = {1: "LOW", 2: "MEDIUM", 3: "HIGH"} +ALARM_ID_AND_ALARM_MESSAGES = { + 0: "Indication for when no alarms is a possible situation", + 1: "Call service to schedule a repair.", + 2: "Call service to schedule a repair.", + 3: "Call service to schedule a repair.", + 4: "Call service to schedule a repair.", + 5: "Call service to schedule a repair.", + 6: "Call service to schedule a repair.", + 7: "Call service to schedule a repair.", + 8: "Call service to schedule a repair.", + 9: "Call service to schedule a repair." , + 10: "Call service to schedule a repair.", + 11: "Alarm ID available for use.", + 12: "Call service to schedule a repair.", + 13: "Call service to schedule a repair.", + 14: "HD blood flow invalid calibration.", + 15: "HD dialysate flow invalid calibration.", + 16: "Call service to schedule a repair.", + 17: "Call service to schedule a repair.", + 18: "Call service to schedule a repair.", + 19: "Call service to schedule a repair.", + 20: "Call service to schedule a repair.", + 21: "Call service to schedule a repair.", + 22: "Call service to schedule a repair.", + 23: "Call service to schedule a repair.", + 24: "Call service to schedule a repair.", + 25: "Call service to schedule a repair.", + 26: "Call service to schedule a repair.", + 27: "HD blood flow invalid calibration record.", + 28: "HD dialyzer flow invalid calibration record.", + 29: "Call service to schedule a repair.", + 30: "Call service to schedule a repair.", + 31: "Call service to schedule a repair.", + 32: "Call service to schedule a repair.", + 33: "Call service to schedule a repair.", + 34: "Call service to schedule a repair.", + 35: "Call service to schedule a repair.", + 36: "Call service to schedule a repair.", + 37: "Call service to schedule a repair.", + 38: "Call service to schedule a repair.", + 39: "Call service to schedule a repair.", + 40: "Call service to schedule a repair.", + 41: "Call service to schedule a repair.", + 42: "Call service to schedule a repair.", + 43: "Call service to schedule a repair.", + 44: "Call service to schedule a repair.", + 45: "Call service to schedule a repair.", + 46: "Call service to schedule a repair.", + 47: "Call service to schedule a repair.", + 48: "Call service to schedule a repair.", + 49: "Call service to schedule a repair.", + 50: "Call service to schedule a repair.", + 51: "Call service to schedule a repair.", + 52: "Call service to schedule a repair.", + 53: "Call service to schedule a repair.", + 54: "Call service to schedule a repair.", + 55: "Call service to schedule a repair.", + 56: "Call service to schedule a repair.", + 57: "Call service to schedule a repair.", + 58: "Call service to schedule a repair.", + 59: "Call service to schedule a repair.", + 60: "Call service to schedule a repair.", + 61: "Call service to schedule a repair.", + 62: "Call service to schedule a repair.", + 63: "Call service to schedule a repair.", + 64: "Call service to schedule a repair.", + 65: "Call service to schedule a repair.", + 66: "HD blood leak sensor set point set failure.", + 67: "Call service to schedule a repair.", + 68: "Dialysate has recirculated for too long.", + 69: "HD blood leak sensor invalid calibration record.", + 70: "Call service to schedule a repair." , + 71: "Call service to schedule a repair.", + 72: "HD blood flow meter status check self-test failure alarm.", + 73: "HD dialysate flow meter status check self-test failure alarm.", + 74: "Call service to schedule a repair.", + 75: "Call service to schedule a repair.", + 76: "Call service to schedule a repair.", + 77: "Call service to schedule a repair.", + 78: "Call service to schedule a repair.", + 79: "Call service to schedule a repair.", + 80: "Call service to schedule a repair.", + 81: "Call service to schedule a repair.", + 82: "Call service to schedule a repair.", + 83: "Call service to schedule a repair.", + 84: "Call service to schedule a repair.", + 85: "Call service to schedule a repair.", + 86: "Call service to schedule a repair.", + 87: "DG heating invalid calibration record.", + 88: "DG concentrate pumps hall sensor out of range.", + 89: "Call service to schedule a repair.", + 90: "DG load cells FPGA read error.", + 91: "Call service to schedule a repair.", + 92: "DG conductivity sensor bad status.", + 93: "DG outlet primary conductivity out of range.", + 94: "DG pressure out of range.", + 95: "DG watchdog expired.", + 96: "Inlet water temperature in high range.", + 97: "Fill conductivity out of range.", + 98: "Call service to schedule a repair.", + 99: "Call service to schedule a repair.", + 100: "Call service to schedule a repair.", + 101: "Call service to schedule a repair.", + 102: "DG heat disinfect temperature gradient out of range.", + 103: "Call service to schedule a repair.", + 104: "Call service to schedule a repair.", + 105: "Call service to schedule a repair.", + 106: "DG dialysate flow sensor invalid calibration record.", + 107: "Call service to schedule a repair.", + 108: "Call service to schedule a repair.", + 109: "Call service to schedule a repair.", + 110: "Call service to schedule a repair.", + 111: "Call service to schedule a repair.", + 112: "Call service to schedule a repair.", + 113: "HD blood leak zero command fault.", + 114: "Call service to schedule a repair.", + 115: "Call service to schedule a repair.", + 116: "Call service to schedule a repair.", + 117: "Call service to schedule a repair.", + 118: "Call service to schedule a repair.", + 119: "Call service to schedule a repair.", + 120: "Call service to schedule a repair.", + 121: "Call service to schedule a repair.", + 122: "Call service to schedule a repair.", + 123: "Call service to schedule a repair.", + 124: "Blood has sat too long in the blood tubing set. No rinseback allowed.", + 125: "Blood has sat too long in the blood tubing set. Treatment must end.", + 126: "A blood leak has been detected. Treatment must end.", + 127: "Venous pressure is low. Check to be sure your blue venous connections are secure and that your venous access is intact." , + 128: "Venous air bubble detected. Check for air bubbles in the venous line. If bubbles are present, tap the tubing to move the bubbles up to the air trap. If bubbles cannot be removed, treatment must end.", + 129: "Venous air bubble detected. Check for air bubbles in the venous line. If bubbles are present, tap the tubing to move the bubbles up to the air trap. If bubbles cannot be removed, treatment must end.", + 130: "Venous pressure is high. Check to be sure your blue venous connections are secure and that there are no kinks or clots in the tubing.", + 131: "Arterial pressure is low. Check to be sure your red arterial connections are secure and that there are no kinks or clots in the tubing.", + 132: "Arterial pressure is low. Check to be sure your red arterial connections are secure and that your venous access is intact.", + 133: "Fluid leak detected in Dialysate Generation", + 134: "Fluid leak detected in Hemodialysis Delivery device. Clean up the spill before continuing." , + 135: "Excessive movement detected with Hemodialysis Delivery device. Confirm the device is stationary and level before continuing.", + 136: "Excessive movement detected with Dialysis Generation device. Confirm the device is stationary and level before continuing.", + 137: "Excessive tilt detected with Hemodialysis Delivery device. Confirm the device is stationary and level before continuing.", + 138: "Excessive tilt detected with Dialysis Generation device. Confirm the device is stationary and level before continuing.", + 139: "Power has been lost. Check all electrical connections. The display and CPU will run off of the battery until power returns.", + 140: "Communication failure with Dialysis Generator. Ensure all cords are securely connected.", + 141: "Failure to fill the Air Trap. Check the air trap vent line and the transducer protector. If the transducer protector is wet, replace it.", + 142: "Occlusion detected after the blood pump. Check for clots or kinks around the dialyzer and in the venous line.", + 143: "Call service to schedule a repair.", + 144: "DG RO flow sensor invalid calibration record.", + 145: "Dialysate conductivity is out of range. Check the acid dialysate concentrates and make sure the correct concentrate is connected.", + 146: "DG RTC or timer accuracy failure.", + 147: "Call service to schedule a repair.", + 148: "Inlet water temperature is high. Check the incoming water for issues with cold water supply.", + 149: "Inlet water temperature is low. Check the incoming water for issues with hot water supply.", + 150: "Inlet water conductivity is high. Check the incoming water for issues.", + 151: "Inlet water conductivity is low. Check the incoming water for issues.", + 152: "Inlet water pressure is low. Check the incoming water supply.", + 153: "HD prime completed high priority alarm.", + 154: "Communication has been lost. Ensure all cords are securely connected.", + 155: "Alarm ID available for use.", + 156: "Alarm ID available for use.", + 157: "DG chemical disinfect prime acid line timeout.", + 158: "Inlet water temperature is in the low range.", + 159: "Dialysate pump failure. Check there are no kinks in the dialysate tubing.", + 160: "Blood pump failure. Check the pump rotor for secure connection.", + 161: "DG comm too many bad CRCs.", + 162: "DG FPGA clock speed check failure.", + 163: "Ultrafiltration error.", + 164: "Ultrafiltration error.", + 165: "Maximum Rinseback time exceeded. Rinseback must end.", + 166: "Maximum Recirculation time exceeded. Treatment must end.", + 167: "Hemodialysis Delivery device door open.", + 168: "Dialysate recirculation error.", + 169: "Call service to schedule a repair.", + 170: "Heparin syringe empty. Option to resume treatment without heparin.", + 171: "Heparin pump occlusion detected. Check heparin line is unclamped and there are no kinks in the heparin line.", + 172: "Not enough heparin is available for treatment. Check if syringe pump is touching syringe plunger. If syringe pump is touching syringe plunger, end treatment. If syringe pump is not touching syringe plunger, reload syringe with enough heparin.", + 173: "HD RTC configuration error.", + 174: "HD RTC or timer accuracy failure.", + 175: "Blood pump eailure. Check the pump rotor for secure connection.", + 176: "HD active reservoir is full during treatment and DG not ready to switch reservoirs.", + 177: "Call service to schedule a repair.", + 178: "HD communication timeout.", + 179: "Call service to schedule a repair.", + 180: "Call service to schedule a repair.", + 181: "Call service to schedule a repair.", + 182: "Call service to schedule a repair.", + 183: "Call service to schedule a repair.", + 184: "Call service to schedule a repair.", + 185: "Fan failure. Check that the fans inlets are not blocked or obstructed.", + 186: "Call service to schedule a repair.", + 187: "Call service to schedule a repair.", + 188: "Call service to schedule a repair.", + 189: "Call service to schedule a repair.", + 190: "Call service to schedule a repair.", + 191: "Call service to schedule a repair.", + 192: "Call service to schedule a repair.", + 193: "Alarm available for use.", + 194: "Call service to schedule a repair.", + 195: "Call service to schedule a repair.", + 196: "Call service to schedule a repair.", + 197: "Call service to schedule a repair.", + 198: "Call service to schedule a repair.", + 199: "Dialysate flow too low while trimmer heater is on.", + 200: "Call service to schedule a repair.", + 201: "Inlet water quality is bad.", + 202: "Inlet water quality is bad.", + 203: "Call service to schedule a repair.", + 204: "Call service to schedule a repair.", + 205: "Call service to schedule a repair.", + 206: "Call service to schedule a repair.", + 207: "Call service to schedule a repair.", + 208: "Call service to schedule a repair.", + 209: "Call service to schedule a repair.", + 210: "Battery pack error.", + 211: "Maximum time for blood stoppage has been exceeded.", + 212: "Maximum time for blood stoppage has been exceeded.", + 213: "HD prime completed medium priority alarm.", + 214: "Inability to deliver saline bolus. Check for kinks or clamped lines in the saline line.", + 215: "Unable to complete Rinseback. Check for kinks or clamped blood lines.", + 216: "Treatment has ended", + 217: "Blood prime error. Check for kinks or clamped blood lines.", + 218: "Heparin syringe not detected.", + 219: "Heparin syringe removed.", + 220: "Battery pack error.", + 221: "Saline back appears empty. Please check saline bag and line and replace if saline bag is empty.", + 222: "Dialysate temperature high.", + 223: "Dialysate temperature low.", + 224: "Treatment paused.", + 225: "Treatment has ended", + 226: "Prime of the bloodlines is complete.", + 227: "Maximum time for blood prime has been exceeded.", + 228: "Priming failure. Check blood and dialysate lines for clamps and kinks.", + 229: "Priming failure. Check blood and dialysate lines for clamps and kinks.", + 230: "Priming failure. Check blood and dialysate lines for clamps and kinks.", + 231: "Self Test Failure. Please ensure the disposable cartridge is completely installed and the handle moved to the down position.", + 232: "Self Test Failure. Please ensure the disposable cartridge is completely installed and the handle moved to the down position. Check for closed clamps or kinks in the tubing.", + 233: "Battery pack error.", + 234: "Communication failure. Ensure all cords are securely connected.", + 235: "Rinseback has been completed.", + 236: "New cartridge needs to be installed.", + 237: "HD prime saline dialyzer time out alarm.", + 238: "Cartridge not loaded or loaded improperly. Check that a cartridge is properly installed.", + 239: "Cartridge not unloaded, or unloaded improperly. Check that the cartridge has been removed.", + 240: "Dialysate conductivity out of range. Check the bicarbonate dialysate concentrates and make sure the correct concentrate is connected.", + 241: "Call service to schedule a repair.", + 242: "Call service to schedule a repair.", + 243: "Call service to schedule a repair.", + 244: "Call service to schedule a repair.", + 245: "Call service to schedule a repair.", + 246: "Call service to schedule a repair.", + 247: "Call service to schedule a repair.", + 248: "Call service to schedule a repair.", + 249: "Call service to schedule a repair.", + 250: "Call service to schedule a repair.", + 251: "Call service to schedule a repair.", + 252: "Call service to schedule a repair.", + 253: "Call service to schedule a repair.", + 254: "Call service to schedule a repair.", + 255: "Call service to schedule a repair.", + 256: "HD and DG software builds are not compatible.", + 257: "Call service to schedule a repair.", + 258: "HD FPGA power out timeout.", + 259: "Call service to schedule a repair.", + 260: "UI POST Application Integrity (Sha256Sum) failure.", + 261: "UI POST CANBus failure.", + 262: "UI POST Display failure.", + 263: "UI POST Touch failure.", + 264: "UI POST SD-Card failure.", + 265: "UI POST RTC failure.", + 266: "UI POST WiFi failure.", + 267: "UI POST Bluetooth failure.", + 268: "UI POST Ethernet failure.", + 269: "UI POST Sound failure.", + 270: "Call service to schedule a repair.", + 271: "Call service to schedule a repair.", + 272: "Fan failure. Check that the fans inlets are not blocked or obstructed.", + 273: "Call service to schedule a repair.", + 274: "Call service to schedule a repair.", + 275: "Call service to schedule a repair.", + 276: "Call service to schedule a repair.", + 277: "Call service to schedule a repair.", + 278: "Ultrafiltration error.", + 279: "DG dialysate drain time out.", + 280: "Call service to schedule a repair.", + 281: "Acid concentrate low. Replace acid concentrate bottle.", + 282: "Bicarbonate concentrate low. Replace bicarbonate concentrate bottle.", + 283: "Call service to schedule a repair.", + 284: "DG load cells primary/back up drift out of range.", + 285: "Dialysate recirculation error.", + 286: "Rinseback complete.", + 287: "Call service to schedule a repair.", + 288: "Call service to schedule a repair.", + 289: "Check dialysate/concentrate caps.", + 290: "DG flow too low while heater is on.", + 291: "Total number of alarms." + } + +ALARM_PRIORITIES = {1: "LOW", 2: "MEDIUM", 3: "HIGH"} ALARM_LIST_TITLE = "Alarm list" REJECTION_REASON = { Index: shared/scripts/names.py =================================================================== diff -u -r1f10d015c98271b65cc894ed4e24d7a3d7f6675f -r151dbbd47b6a62cd0f35d482b23f1b4456115db4 --- shared/scripts/names.py (.../names.py) (revision 1f10d015c98271b65cc894ed4e24d7a3d7f6675f) +++ shared/scripts/names.py (.../names.py) (revision 151dbbd47b6a62cd0f35d482b23f1b4456115db4) @@ -65,6 +65,8 @@ o_MainHome_MainHome = {"container": o_Gui_MainView, "objectName": "_MainHome", "type": "MainHome", "visible": True} o_standby_page = {"container": o_MainHome_MainHome, "type": "Column", "unnamed": 1, "visible": True} +o_alarms_text ={"type": "Text", "unnamed": 1, "visible": True} + #alarm list o_alarm_list_container = {"container": o_Overlay, "id": "_flickable", "type": "Flickable", "unnamed": 1, "visible": True} o_notification_bar_alarm_list_button = {"container": o_Gui_MainView, "id": "_alarmListImage", "source": "qrc:/images/iList", "type": "Image", "unnamed": 1, "visible": True} @@ -87,8 +89,9 @@ #Alarm list title text o_alarm_title_text = {"container": o_Overlay, "id": "_title", "type": "Text", "unnamed": 1, "visible": True} #Alarm dialogue -o_alarm_dialogue_box_msg = {"container": o_Overlay, "id": "_desc", "objectName": "_NotificationDialog_Description", "type": "Text", "visible": True} - +o_alarm_dialogue_box_msg = {"container": o_Overlay, "id": "_desc", "objectName": "_NotificationDialog_Description", "type": "Text", "visible": True} +#Alarm id +o_alarm_id = {"container": o_Overlay, "type": "Text", "unnamed": 1, "visible": True} #alarm dialog o_alarm_dialog_content = {"container": o_Overlay , "objectName": "_NotificationDialog" , "type": "ContentItem" } o_alarm_dialog_titleBar = {"container": o_alarm_dialog_content , "id" : "_titleBar" , "type": "Rectangle" } @@ -114,7 +117,6 @@ o_dismiss_alarm = {"container": o_Overlay, "id": "_silence", "type": "TouchRect", "unnamed": 1, "visible": True} o_alarm_not_silence_img = {"container": o_alarm_dialog_content, "id": "_muteButton", "type": "MuteButton", "visible": True} o_alarm_silence_img = {"container": o_alarm_dialog_content, "id": "_muteButton", "type": "MuteButton", "visible": True} - #in-treatment o_blood_priming = {"container": o_treatmentStack_TreatmentBloodPrime_ScreenItem, "text": "Blood Priming", "type": "Text", "unnamed": 1, "visible": True} o_blood_priming_value_by_default = {"container": o_treatmentStack_TreatmentBloodPrime_ScreenItem, "text": "0 mL", "type": "Text", "unnamed": 1, "visible": True} @@ -918,7 +920,6 @@ #End treatment rejection messages object o_end_treatment_state_rejection_msg = {"container": o_EndTreatmentEndStack_EndTreatmentEndStack, "type": "Text", "unnamed": 1, "visible": True} - #Containers for recirculate state o_EndTreatmentRecirculateStack_EndTreatmentRecirculateStack = {"container": o_Gui_MainView, "objectName": "_EndTreatmentRecirculateStack", "type": "EndTreatmentRecirculateStack", "visible": True} o_EndTreatmentRecirculateStack_EndTreatmentBase_EndTreatmentBase = {"container": o_EndTreatmentRecirculateStack_EndTreatmentRecirculateStack, "objectName": "_EndTreatmentBase", "type": "EndTreatmentBase", "visible": True} @@ -1055,3 +1056,6 @@ o_back_button_text = {"container": o_Gui_MainView, "text":"BACK", "type": "Text", "unnamed": 1, "visible": True} o_preTreatmentDisposablesStack_preTreatmentDisposablesSalineBag_TreatmentFlowBase = {"container": o_PreTreatmentStack_preTreatmentDisposablesStack_PreTreatmentDisposablesStack, "objectName": "_preTreatmentDisposablesSalineBag", "type": "TreatmentFlowBase", "visible": True} o_confirm_button_text = {"container": o_preTreatmentDisposablesStack_preTreatmentDisposablesSalineBag_TreatmentFlowBase, "text": "CONFIRM", "type": "Text", "unnamed": 1, "visible": True} + + + Index: tst_ui_alarms_dialog/test.py =================================================================== diff -u -rb36319bbe0f9de9af1697cafa5c4470ae57d1cdd -r151dbbd47b6a62cd0f35d482b23f1b4456115db4 --- tst_ui_alarms_dialog/test.py (.../test.py) (revision b36319bbe0f9de9af1697cafa5c4470ae57d1cdd) +++ tst_ui_alarms_dialog/test.py (.../test.py) (revision 151dbbd47b6a62cd0f35d482b23f1b4456115db4) @@ -19,15 +19,63 @@ from dialin.protocols.CAN import DenaliCanMessenger from dialin.ui.hd_simulator_alarms import HDAlarmsSimulator + ALARM_EXPIRES_TIME = (0, 10, 20, 30, 30, 100) ALARM_ID_COMBINATION = (2, 3, 5, 7, 10, 15, 20, 25, 30, 50) - +alarm_id_combination = (2, 3, 5, 7, 10, 15, 20, 25, 30, 50) +contents = [] +alarm_ids = [] +alarm_titles = [] +alarms_msgs = [] +count_of_alarms = [] +title_count_dict = {} +text_obj_names = [names.o_alarm_title_text,names.o_alarm_id,names.o_alarm_dialogue_box_msg ] logging.basicConfig(filename='log_file.log',level=logging.INFO, datefmt='%d-%b-%y %H:%M:%S') hd_simulator = HDSimulator() logger = logging.getLogger("INFO") messenger = DenaliCanMessenger('can0') alarm = HDAlarmsSimulator(can_interface=messenger, logger=logger) +def get_text_obj(screen_obj,text): + """ + To obtain a text object based on text provided + @param (str) screen_obj: provides the container name on which the text must be present + @param (str) text: instruction text + @returns a real name object + """ + names.o_alarms_text["container"] = screen_obj + names.o_alarms_text["text"] = text + return names.o_alarms_text + +def read_data_from_alarms_conf_file(): + """ + This method is used to read the data from Alarms.conf file. + """ + utils.waitForGUI(0.2) + with open(config.ALARMS_CONF_LOCATION, 'r') as conf_file: + contents = conf_file.readlines() + count = 0 + line_count = 0 + for line in contents: + length =len(line) + line_count += 1 + if line[0] =="[": + alarm_ids.append(conf_data[0]) + continue + else: + conf_data = line.split("=") + if length > 2: + count += 1 + alarm_titles.append(conf_data[0]) + alarms_msgs.append(conf_data[1]) + if line_count == len(contents): + count_of_alarms.append(count) + else: + if count > 0: + count_of_alarms.append(count) + count = 0 + title_count_dict.update(dict(zip(title_list,count_of_alarms))) + def minimize(): """ Method to minimize alarm dialog box @@ -215,14 +263,14 @@ minimize() test.compare(str(waitForObjectExists(names.o_alarm_bar_text ).text), config.UNDEFINED_ALARM_ID_MSG.format(alarm_id), "verified alarm message for exceeded alarm id's") else: - test.compare(str(waitForObjectExists(names.o_alarm_text_description).text), config.ALARM_ID_AND_MESSAGES[alarm_id], "Alarm message is verified from alarm dialog box") + test.compare(str(waitForObjectExists(names.o_alarm_text_description).text), config.ALARM_ID_AND_ALARM_MESSAGES[alarm_id], "Alarm message is verified from alarm dialog box") minimize() - test.compare(str(waitForObjectExists(names.o_alarm_bar_text ).text), config.ALARM_ID_AND_MESSAGES[alarm_id], "Alarm message is verified from alarm bar") + test.compare(str(waitForObjectExists(names.o_alarm_bar_text ).text), config.ALARM_ID_AND_ALARM_MESSAGES[alarm_id], "Alarm message is verified from alarm bar") maximize() test.endSection() + - def test_verify_alarm_mute(alarm_timeout = 0, v_flags = 0, alarm_status = "Mute"): """ Method to verify alarm mute and unmute characteristics. @@ -264,7 +312,7 @@ @output N/A """ test.startSection("verification of alarm bar parameters") - for alarm_id in range(0, len(config.ALARM_ID_AND_MESSAGES)+1): + for alarm_id in range(0, len(config.ALARM_ID_AND_MESSAGES)): if alarm_id == config.ALARM_ID_NO_ALARM: test.log("validate alarm condition for alarm id : 0")