Index: tst_rinseback_setup/test.py =================================================================== diff -u -r0d29de114c4155f07fc8c2d1c83544643a18a334 -r1da2d466f9f2501f10fd623cd48f3ae13e7c1faa --- tst_rinseback_setup/test.py (.../test.py) (revision 0d29de114c4155f07fc8c2d1c83544643a18a334) +++ tst_rinseback_setup/test.py (.../test.py) (revision 1da2d466f9f2501f10fd623cd48f3ae13e7c1faa) @@ -18,19 +18,36 @@ import names import builtins +import test from dialin.ui import utils from dialin.ui.hd_simulator import HDSimulator +from dialin.ui.dg_simulator import DGSimulator from configuration import config from configuration import utility from dialin.common.hd_defs import HDOpModes, HDOpSubModes, TreatmentStates, TreatmentEndStates, TreatmentRinsebackStates +dg_simulator = DGSimulator() hd_simulator = HDSimulator() SCREEN_OBJ1 = names.o_EndTreatmentRinsebackStack_EndTreatmentRinsebackInit_EndTreatmentRinsebackInit num_of_instructions = 3 rightarrow_obj_names = [names.o_EndTreatmentRinsebackInit_rightImage_Image] leftarrow_obj_names = [names.o_EndTreatmentRinsebackInit_leftImage_Image] +container_run_state = names.o_EndTreatmentRinsebackStack_EndTreatmentRinseback_EndTreatmentRinseback +container_additional_state = names.o_EndTreatmentRinsebackStack_EndTreatmentAdditional_EndTreatmentBase +count_down_value = 121 +count_down_default_value = 0 +timer_default_value = 1 +def set_custom_object_property_rinseback_ml(text,container): + """ + Method to set object property based on text + @param text : (string) treatment parameter text + """ + names.o_text_volume_rinseback_state["text"] = text + names.o_text_volume_rinseback_state["container"] = container + return names.o_text_volume_rinseback_state + def verify_bullet_navigation(num, num_of_instructions, screen_obj): """ Method to verify status of bullets based @@ -45,58 +62,81 @@ bullet_circle_color = bullet_children[0].color.name bullet_border_color = bullet_children[0].border.color.name if instruction <= num: -# test.compare(bullet_circle_color, config.COMPLETE_COLOR) -# test.compare(bullet_border_color,config.COMPLETE_COLOR) + test.compare(bullet_circle_color, config.COMPLETE_COLOR) + test.compare(bullet_border_color,config.COMPLETE_COLOR) test.log(str(instruction) + " Complete bullet") else: test.compare(bullet_circle_color, config.CURRENT_COLOR) test.compare(bullet_border_color,config.INCOMPLETE_COLOR) test.log(str(instruction) + " Incomplete bullet") test.endSection() - -def verification_of_rinseback_setup_state(): + +def verify_of_rinseback_stop_init_screen(): """ - Method to navigate to End-Treatment Rinseback Setup screens + Method to navigate and verify to Rinseback Stop INIT state screens """ - test.startSection("verifying Rinseback Setup state screens") test.startSection("verifying Rinseback Stop INIT state screens") hd_simulator.cmd_send_hd_operation_mode(op_mode = HDOpModes.MODE_TREA.value , sub_mode=HDOpSubModes.SUBMODE_START.value) hd_simulator.cmd_set_treatment_states_data(sub_mode = TreatmentStates.TREATMENT_RINSEBACK_STATE.value , uf_state = TreatmentStates.TREATMENT_START_STATE.value, saline_state = TreatmentStates.TREATMENT_START_STATE.value, heparin_state = TreatmentStates.TREATMENT_START_STATE.value, rinseback_state= TreatmentRinsebackStates.RINSEBACK_STOP_INIT_STATE.value, recirculate_state = TreatmentStates.TREATMENT_START_STATE.value, blood_prime_state = TreatmentStates.TREATMENT_START_STATE.value,treatment_end_state = TreatmentStates.TREATMENT_START_STATE.value, treatment_stop_state = TreatmentStates.TREATMENT_START_STATE.value, dialysis_state = TreatmentStates.TREATMENT_START_STATE.value) + for num in range(timer_default_value,count_down_value): + hd_simulator.cmd_send_treatment_rinseback_data(target_vol= float(0), current_vol= float(0), flow_rate= 0, timeout= num,timeout_countdown= num, is_completed= 0) + min,sec = utility.convert_seconds_into_min_and_sec(num) + test.compare(str(waitForObject(names.o_EndTreatmentRinsebackInit_TimeText_minute_Text).text),str(sec),"Vrifying seconds apeearing on UI") + test.compare(str(waitForObject(names.o_EndTreatmentRinsebackInit_TimeText_hour_Text).text),str(min),"Verifying minutes apeearing on UI") + test.compare(str(waitForObject(names.o_rinse_back_text).text),config.RINSE_BACK_SETUP_TEXT, "Rinseback Setup text must be {}".format(config.RINSE_BACK_SETUP_TEXT)) -# test.compare(str(waitForObjectExists(names.o_rinse_back_text).text), config.RINSEBACK_BUTTON_TEXT, "Rinseback button text must be {}".format(config.RINSEBACK_BUTTON_TEXT)) test.verify(waitForObjectExists(names.o_rinse_back_text).enabled, " Start Rinseback button must be active") mouseClick(waitForObject(names.o_rinse_back_text)) verify_right_instruction_in_rinseback_setup_state(num_of_instructions) verify_left_instruction_in_rinseback_setup_state(num_of_instructions) verify_right_instruction_in_rinseback_setup_state(num_of_instructions) test.endSection() - + +def verify_rinseback_run_state_screen(): + """ + Method to navigate and verify to Rinseback RUN state screens + """ test.startSection("verifying Rinseback RUN state screens") hd_simulator.cmd_set_treatment_states_data(sub_mode = TreatmentStates.TREATMENT_RINSEBACK_STATE.value , uf_state = TreatmentStates.TREATMENT_START_STATE.value, saline_state = TreatmentStates.TREATMENT_START_STATE.value, heparin_state = TreatmentStates.TREATMENT_START_STATE.value,rinseback_state= TreatmentRinsebackStates.RINSEBACK_RUN_STATE.value, recirculate_state = TreatmentStates.TREATMENT_START_STATE.value, blood_prime_state = TreatmentStates.TREATMENT_START_STATE.value,treatment_end_state = TreatmentEndStates.TREATMENT_END_PAUSED_STATE.value, treatment_stop_state = TreatmentStates.TREATMENT_START_STATE.value, dialysis_state = TreatmentStates.TREATMENT_START_STATE.value) + + for num in range(count_down_default_value,count_down_value): + hd_simulator.cmd_send_treatment_rinseback_data(target_vol= count_down_value, current_vol= num, flow_rate= num, timeout= count_down_default_value,timeout_countdown= count_down_default_value, is_completed= 0) + rinseback_ml = set_custom_object_property_rinseback_ml((str(num)+config.RINSEBACK_UNIT),container_run_state) + test.compare(str(waitForObject(rinseback_ml).text),str(num)+config.RINSEBACK_UNIT, "Verifying values apeearing on Progress circle") + rinseback_ml_min = set_custom_object_property_rinseback_ml((str(num)+config.RINSEBACK_UNIT_MIN),container_run_state) + test.verify(waitForObjectExists(names.o_EndTreatmentRinseback_circle_Circle).enabled, "Progress bar must be enable") + test.compare(str(waitForObject(rinseback_ml_min).text),str(num)+config.RINSEBACK_UNIT_MIN, "Verifying values apeearing on Lable") + test.compare(str(waitForObject(names.o_EndTreatmentRinseback_circle_ProgressCircle).value),str(num), "Verifying Progress bar values") + + test.compare(str(waitForObject(names.o_EndTreatmentRinseback_Rinseback_Text).text),config.RINSEBACK_TEXT, "Rinseback text must be {}".format(config.RINSEBACK_TEXT)) test.compare(str(waitForObject(names.o_EndTreatmentRinseback_imageEnd_ImageText).text),config.END_IMAGE_BUTTON_TEXT, "END button text must be {}".format(config.END_IMAGE_BUTTON_TEXT)) test.verify(waitForObjectExists(names.o_EndTreatmentRinseback_imageEnd_ImageText).enabled, " END button must be active") mouseClick(waitForObject(names.o_EndTreatmentRinseback_imageEnd_ImageText)) - + test.compare(str(waitForObject(names.o_EndTreatmentRinseback_imageDecelerate_ImageText).text),config.DECELERATE_BUTTON_TEXT, "Decelerate button text must be {}".format(config.DECELERATE_BUTTON_TEXT)) test.verify(waitForObjectExists(names.o_EndTreatmentRinseback_imageDecelerate_ImageText).enabled, " Decelerate button must be active") mouseClick(waitForObject(names.o_EndTreatmentRinseback_imageDecelerate_ImageText)) - + test.compare(str(waitForObject(names.o_EndTreatmentRinseback_imageAccelerate_ImageText).text),config.ACCELERATE_BUTTON_TEXT, "Accelerate button text must be {}".format(config.ACCELERATE_BUTTON_TEXT)) test.verify(waitForObjectExists(names.o_EndTreatmentRinseback_imageAccelerate_ImageText).enabled, " Accelerate button must be active") mouseClick(waitForObject(names.o_EndTreatmentRinseback_imageAccelerate_ImageText)) - + test.compare(str(waitForObject(names.o_EndTreatmentRinseback_imagePause_ImageText).text),config.PAUSE_BUTTON_TEXT, "Pause button text must be {}".format(config.PAUSE_BUTTON_TEXT)) test.verify(waitForObjectExists(names.o_EndTreatmentRinseback_imagePause_ImageText).enabled, " Pause button must be active") mouseClick(waitForObject(names.o_EndTreatmentRinseback_imagePause_ImageText)) test.endSection() - + +def verify_rinseback_paused_state_screen(): + """ + Method to navigate and verify to Rinseback Paused state screens + """ test.startSection("verifying Rinseback Paused state screens") hd_simulator.cmd_set_treatment_states_data(sub_mode = TreatmentStates.TREATMENT_RINSEBACK_STATE.value , uf_state = TreatmentStates.TREATMENT_START_STATE.value, saline_state = TreatmentStates.TREATMENT_START_STATE.value, heparin_state = TreatmentStates.TREATMENT_START_STATE.value,rinseback_state= TreatmentRinsebackStates.RINSEBACK_PAUSED_STATE.value, recirculate_state = TreatmentStates.TREATMENT_START_STATE.value, @@ -106,44 +146,58 @@ test.verify(waitForObjectExists(names.o_EndTreatmentRinseback_imageEnd_ImageText).enabled, " END button must be active") mouseClick(waitForObject(names.o_EndTreatmentRinseback_imageEnd_ImageText)) + accelerator = waitForObjectExists(names.o_EndTreatmentRinseback_imageAccelerate_ImageText).enabled + test.compare(accelerator,False, " Accelerate button must be disabled") + decelarator = waitForObjectExists(names.o_EndTreatmentRinseback_imageDecelerate_ImageText).enabled + test.compare(decelarator,False, " Decelerate button must be disabled") -# test.compare(str(waitForObject(names.o_EndTreatmentRinseback_imageAccelerate_ImageText).text),config.ACCELERATE_BUTTON_TEXT, "Accelerate button text must be {}".format(config.ACCELERATE_BUTTON_TEXT)) -# test.verify(waitForObjectExists(names.o_EndTreatmentRinseback_imageAccelerate_ImageText).enabled, " Accelerate button must be active") -# mouseClick(waitForObject(names.o_EndTreatmentRinseback_imageAccelerate_ImageText)) -# -# test.compare(str(waitForObject(names.o_EndTreatmentRinseback_imageDecelerate_ImageText).text),config.DECELERATE_BUTTON_TEXT, "Decelerate button text must be {}".format(config.DECELERATE_BUTTON_TEXT)) -# test.verify(waitForObjectExists(names.o_EndTreatmentRinseback_imageDecelerate_ImageText).enabled, " Decelerate button must be active") -# mouseClick(waitForObject(names.names.o_EndTreatmentRinseback_imageDecelerate_ImageText)) - test.compare(str(waitForObject(names.o_EndTreatmentRinseback_imageResume_ImageText).text),config.RESUME_BUTTON_TEXT, "Resume button text must be {}".format(config.RESUME_BUTTON_TEXT)) test.verify(waitForObjectExists(names.o_EndTreatmentRinseback_imageResume_ImageText).enabled, " Resume button must be active") mouseClick(waitForObject(names.o_EndTreatmentRinseback_imageResume_ImageText)) test.endSection() - + +def verify_rinseback_stop_state_screen(): + """ + Method to navigate and verify to Rinseback Stop state screens + """ test.startSection("verifying Rinseback Stop state screens") hd_simulator.cmd_set_treatment_states_data(sub_mode = TreatmentStates.TREATMENT_RINSEBACK_STATE.value , uf_state = TreatmentStates.TREATMENT_START_STATE.value, saline_state = TreatmentStates.TREATMENT_START_STATE.value, heparin_state = TreatmentStates.TREATMENT_START_STATE.value,rinseback_state= TreatmentRinsebackStates.RINSEBACK_STOP_STATE.value, recirculate_state = TreatmentStates.TREATMENT_START_STATE.value, blood_prime_state = TreatmentStates.TREATMENT_START_STATE.value,treatment_end_state = TreatmentEndStates.TREATMENT_END_PAUSED_STATE.value, treatment_stop_state = TreatmentStates.TREATMENT_START_STATE.value, dialysis_state = TreatmentStates.TREATMENT_START_STATE.value) - + for num in range(timer_default_value,count_down_value): + hd_simulator.cmd_send_treatment_rinseback_data(target_vol= count_down_value, current_vol= count_down_default_value, flow_rate= count_down_default_value, timeout= num,timeout_countdown= num, is_completed= 0) + min,sec = utility.convert_seconds_into_min_and_sec(num) + test.compare(str(waitForObject(names.o_EndTreatmentRinsebackComplete_TimeText_minute_Text).text),str(sec), "Vrifying seconds apeearing on UI") + test.compare(str(waitForObject(names.o_EndTreatmentRinsebackComplete_TimeText_hour_Text).text),str(min), "Vrifying minutes apeearing on UI") test.compare(str(waitForObject(names.o_EndTreatmentRinsebackComplete_Rinseback_Complete_Text).text),config.RINSEBACK_COMPLETE_TEXT, "Rinseback Complete text must be {}".format(config.RINSEBACK_COMPLETE_TEXT)) test.compare(str(waitForObjectExists(names.o_EndTreatmentRinsebackComplete_END_TREATMENT_Text).text), config.END_TREATMENT_BUTTON_TEXT, "END TREATMENT button text must be {}".format(config.END_TREATMENT_BUTTON_TEXT)) test.verify(waitForObjectExists(names.o_EndTreatmentRinsebackComplete_END_TREATMENT_Text).enabled, "END TREATMENT button must be active") mouseClick(waitForObject(names.o_EndTreatmentRinsebackComplete_END_TREATMENT_Text)) - + test.compare(str(waitForObjectExists(names.o_EndTreatmentRinsebackComplete_ADDITIONAL_Text).text), config.ADDITIONAL_BUTTON_TEXT, "ADDITIONAL button text must be {}".format(config.ADDITIONAL_BUTTON_TEXT)) test.verify(waitForObjectExists(names.o_EndTreatmentRinsebackComplete_ADDITIONAL_Text).enabled, "ADDITIONAL button must be active") mouseClick(waitForObject(names.o_EndTreatmentRinsebackComplete_ADDITIONAL_Text)) test.endSection() - + +def verify_rinseback_run_additional_state_screen(): + """ + Method to navigate and verify to Rinseback Run Additional State screens + """ test.startSection("verifying Rinseback Run Additional State screens") hd_simulator.cmd_set_treatment_states_data(sub_mode = TreatmentStates.TREATMENT_RINSEBACK_STATE.value , uf_state = TreatmentStates.TREATMENT_START_STATE.value, saline_state = TreatmentStates.TREATMENT_START_STATE.value, heparin_state = TreatmentStates.TREATMENT_START_STATE.value,rinseback_state= TreatmentRinsebackStates.RINSEBACK_RUN_ADDITIONAL_STATE.value, recirculate_state = TreatmentStates.TREATMENT_START_STATE.value, blood_prime_state = TreatmentStates.TREATMENT_START_STATE.value,treatment_end_state = TreatmentEndStates.TREATMENT_END_PAUSED_STATE.value, treatment_stop_state = TreatmentStates.TREATMENT_START_STATE.value, dialysis_state = TreatmentStates.TREATMENT_START_STATE.value) - + for num in range(count_down_default_value,count_down_value): + hd_simulator.cmd_send_treatment_rinseback_data(target_vol= count_down_value, current_vol= num, flow_rate= num, timeout= count_down_default_value,timeout_countdown= count_down_default_value, is_completed= 0) + rinseback_additional_ml = set_custom_object_property_rinseback_ml((str(num)+config.RINSEBACK_UNIT_MIN),container_additional_state) + test.compare(str(waitForObject(rinseback_additional_ml).text),str(num)+config.RINSEBACK_UNIT_MIN, "Verifying values apeearing on Progres bar") + rinseback_additional_ml_min = set_custom_object_property_rinseback_ml((str(num)+config.RINSEBACK_UNIT),container_additional_state) + test.compare(str(waitForObject(rinseback_additional_ml_min).text),str(num)+config.RINSEBACK_UNIT, "Verifying values apeearing on Lable") + test.verify(waitForObjectExists(names.o_EndTreatmentAdditional_circle_Circle).enabled, "Progress Bar must be enable") + test.compare(str(waitForObject(names.o_EndTreatmentAdditional_circle_ProgressCircle).value),str(num), "Verifying Progress bar values") test.compare(str(waitForObject(names.o_EndTreatmentAdditional_Additional_Rinseback_Text).text),config.ADDITIONAL_RINSEBACK_TEXT, "Additional Rinseback text must be {}".format(config.ADDITIONAL_RINSEBACK_TEXT)) test.endSection() - test.endSection() - + def verify_right_instruction_in_rinseback_setup_state(num_of_instructions): """. Method to verify right arrow functionality @@ -162,7 +216,7 @@ def verify_left_instruction_in_rinseback_setup_state(num_of_instructions): """ Method to verify left arrow functionality for rinseback setup state - + @param num_of_instructions - (int) count the number of instructions """ test.startSection("verifying left arrow functionality for rinseback setup state screens") utility.verify_missing_object(rightarrow_obj_names) @@ -178,4 +232,11 @@ utils.tstStart(__file__) startApplication(config.AUT_NAME) - verification_of_rinseback_setup_state() \ No newline at end of file + verify_of_rinseback_stop_init_screen() + verify_rinseback_run_state_screen() + verify_rinseback_paused_state_screen() + verify_rinseback_stop_state_screen() + verify_rinseback_run_additional_state_screen() + + + \ No newline at end of file