# -*- coding: utf-8 -*-" import names from dialin.ui import utils from dialin.ui.hd_simulator import HDSimulator from dialin.common.msg_defs import RequestRejectReasons from dialin.ui.utils import waitForGUI def skip_create_treatment(hd_simulator: HDSimulator): """ Tells the UI that the treatment parameters are valid. Effectively skips past the create treatment screen for parameter selection and validation @param hd_simulator: the HDSimulator object @return: None """ rejections = [ RequestRejectReasons.REQUEST_REJECT_REASON_NONE for _ in range(18)] hd_simulator.cmd_send_treatment_parameter_validation_response(rejections) def test_confirm_priming_begin(hd_simulator: HDSimulator): """ Simulates the HD actions during confirm priming and begin (pre-treatment). @param hd_simulator: the HDSimulator object @return: None """ # bypass selecting parameters and their validation (see tst_CreateTreatment) hd_simulator.cmd_send_start_treatment_response(1, 0) skip_create_treatment(hd_simulator) test.compare(waitForObject(names.o_confirm_treatment_flickable).visible, True, "Found confirm treatment flickable") flick(waitForObject(names.o_confirm_treatment_flickable), 0, 700) mouseClick(waitForObject(names.o_create_treatment_confirm)) # wait for priming simulation to complete waitForGUI(7) # advance to start the treatment test.compare(waitForObject(names.o_priming_continue_button).visible, True, "Found priming continue button") mouseClick(waitForObject(names.o_priming_continue_button)) mouseClick(waitForObject(names.o_treatment_begin_back_button)) test.compare(waitForObject(names.o_priming_back_button).visible, True, "Found priming back button") mouseClick(waitForObject(names.o_priming_back_button)) test.compare(waitForObject(names.o_create_treatment_confirm_back_button).visible, True, "Found create treatment confirm back button") mouseClick(waitForObject(names.o_create_treatment_confirm_back_button)) test.compare(waitForObject(names.o_create_treatment_back_button).visible, True, "Found create treatment back button") mouseClick(waitForObject(names.o_create_treatment_back_button)) waitForGUI(0.1) mouseClick(waitForObject(names.o_create_treatment_button)) waitForGUI(0.1) skip_create_treatment(hd_simulator) test.compare(waitForObject(names.o_create_treatment_confirm).visible, True, "Found treatment confirm button") mouseClick(waitForObject(names.o_create_treatment_confirm)) # wait for priming simulation to complete waitForGUI(7) test.compare(waitForObject(names.o_priming_continue_button).visible, True, "Found priming continue button") mouseClick(waitForObject(names.o_priming_continue_button)) test_ultrafiltration_slider(hd_simulator) # Wait for the BLE alert mouseClick(waitForObject(names.o_treatment_begin_start_button)) test.compare(waitForObject(names.o_alert).visible, True, "Found alert") mouseClick(waitForObject(names.o_alert_confirm)) waitForGUI(1) mouseClick(waitForObject(names.o_treatmentStart_back)) mouseClick(waitForObject(names.o_mainMenu_settings)) mouseClick(waitForObject(names.o_settings_end_treatment)) waitForGUI(3) def test_ultrafiltration_slider(hd_simulator: HDSimulator): """ Tests the ultrafiltration slider @param hd_siulator: The HDSimulator object @return: None """ slider_name = "_treatmentBeginUltrafiltration" slider_object_name = slider_name + "Slider" test.log("Slider Under Test", slider_object_name) slider_selected_value_object_name = slider_name + "Value" slider_object = {"container": names.o_treatment_begin_container, "objectName": slider_object_name, "type": "Slider" } selected_value_object = { "container": names.o_treatment_begin_container, "objectName": slider_selected_value_object_name, "type": "Text" } test.compare(waitForObject(selected_value_object).visible, True) mouseClick(waitForObject(slider_object), 0, 0, Qt.LeftButton) test.compare(waitForObject(selected_value_object).text, "0.000") mouseClick(waitForObject(slider_object), waitForObject(slider_object).width, 0, Qt.LeftButton) test.compare(waitForObject(selected_value_object).visible, True) test.compare(waitForObject(selected_value_object).text, "8.000") def main(): utils.tstStart(__file__) startApplication(names.AUT_NAME + " -q") hd_simulator = HDSimulator() test_confirm_priming_begin(hd_simulator) utils.tstDone()