Index: suite_leahi/shared/scripts/configuration/navigation.py =================================================================== diff -u -ra41aef5f49d9aed41b1d846a4c388459a7c5eed1 -r5667e686a487da135e622b2ebb0ffacf6a12688f --- suite_leahi/shared/scripts/configuration/navigation.py (.../navigation.py) (revision a41aef5f49d9aed41b1d846a4c388459a7c5eed1) +++ suite_leahi/shared/scripts/configuration/navigation.py (.../navigation.py) (revision 5667e686a487da135e622b2ebb0ffacf6a12688f) @@ -4,6 +4,8 @@ from leahi_dialin.ui.td_messaging import TD_Messaging from leahi_dialin.common.td_defs import TDOpModes, TDStandbyStates from configuration import config, utility +from configparser import ConfigParser +from pathlib import Path td_simulator = TD_Messaging() @@ -33,6 +35,22 @@ config.DEVICE_SETTINGS_SCREEN_TITLE_TEXT ), ) +def get_ini_value(conf_path: str , section: str, key: str): + """ + Method to get the advanced option from the System.conf file + """ + path = Path(conf_path) + if not path.exists(): + raise FileNotFoundError(f"Not found: {path}") + parser = ConfigParser() + # Preserve case if needed: + # parser.optionxform = str + parser.read(path, encoding="utf-8") + if not parser.has_section(section): + raise KeyError(f"Section [{section}] not found in {path}") + if not parser.has_option(section, key): + raise KeyError(f"Key '{key}' not found in section [{section}]") + return parser.get(section, key) def navigation_pageIndicator_step(vStep_name): """ @@ -45,34 +63,29 @@ """ test.startSection("Method to navigation in the pretreatment page ") - stepcount = squish.waitForObjectExists(names.o_preTreatmentStack_repeater_Repeater) - Nextbutton = utility.setObjectText(obj =names.o_preTreatmentStack_Text, text =config.NEXT) - squish.mouseClick(squish.waitForObject(Nextbutton)) + stepId = squish.waitForObjectExists(names.o_preTreatmentStack_stepIndicator_StepIndicator) + stepnames = utility.findAllObjectsById(stepId, "_text") + value = get_ini_value("/home/denali/Public/luis/config/configurations/Settings/System.conf", section ="AdvancedMode", key ="AdvancedMode") + standard = stepnames[1:] + if value == "0": + standard = stepnames[3:] + Nextbutton = utility.setObjectText(obj =names.o_preTreatmentStack_Text, text =config.NEXT) + squish.mouseClick(squish.waitForObject(Nextbutton)) + autoLoadbutton = utility.setObjectText(obj =names.o_preTreatmentStack_Text, text ="Auto Load") squish.mouseClick(squish.waitForObject(autoLoadbutton)) td_simulator.td_blood_set_auto_load_response(vRejectionReason = 0) stepId = squish.waitForObjectExists(names.o_preTreatmentStack_stepIndicator_StepIndicator) values = utility.findAllObjectsById(stepId, "_text") - if stepcount.count == 9: - for input_field in values[3:]: - test.log(str(input_field.text)) - if str(input_field.text) == "Water Sample": - squish.mouseClick(squish.waitForObject(names.o_PreTreatmentSampleStack_button_TouchRect)) - if str(input_field.text) == vStep_name: - break - else: - Nextbutton = utility.setObjectText(obj =names.o_preTreatmentStack_Text, text =config.NEXT) - squish.mouseClick(Nextbutton) - else: - for input_field in values[3:]: - test.log(str(input_field.text)) - if str(input_field.text) == "Water Sample": - squish.mouseClick(waitForObject(names.o_PreTreatmentSampleStack_button_TouchRect)) + for input_field in standard: + test.log(str(input_field.text)) + if str(input_field.text) == "Water Sample": + squish.mouseClick(squish.waitForObject(names.o_PreTreatmentSampleStack_button_TouchRect)) - if str(input_field.text) == vStep_name: - break - else: - Nextbutton = utility.setObjectText(obj =names.o_preTreatmentStack_Text, text =config.NEXT) - squish.mouseClick(Nextbutton) + if str(input_field.text) == vStep_name: + break + else: + Nextbutton = utility.setObjectText(obj =names.o_preTreatmentStack_Text, text =config.NEXT) + squish.mouseClick(Nextbutton) test.endSection() \ No newline at end of file