# -*- coding: utf-8 -*- ## # Copyright (c) 2019-2020 Diality Inc. - All Rights Reserved. # copyright # THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, # IN PART OR IN WHOLE, # WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. # # file tst_post <<<<<<< HEAD # date 2020/12/27 # author Behrouz NematiPour # # NOTE: # This test is a demo and is intended to be used as an example on how to call the dialin API within SquishQt. from time import sleep from dialin.ui import utils from dialin.ui import unittests from dialin.ui.hd_simulator import HDSimulator def main(): utils.tstStart("demo") startApplication("denaliSquish") ======= # @author (last) Papiya Mandal # @date (last) 07-02-2022 # import names from builtins import int as pyInt from configuration.config import AUT_NAME from dialin.ui import utils from dialin.ui.hd_simulator import HDSimulator MSGS_AND_CONDITIONS = { 1: [True, False], 5: [True, False], 2: [True, False], 4: [True, False], 8: [True, False], 9: [False, False], 3: [True, False], 10: [True, False], 15: [True, False], 11: [True, False], 17: [True, False], 12: [True, False], 20: [True, False], 13: [True, False], 14: [True, False], 6: [False, False], 19: [True, False], 18: [True, False], 7: [True, True], 16: [False, True], } hd = HDSimulator() def get_progress(): """ Method to obtain progress @return: Progress value """ progress_bar = object.parent(waitForObjectExists(names.o_progress_bar)) progress_bar_children = object.children(progress_bar) progress_bar_val_parent = progress_bar_children[3] progress_bar_val_parents_children = object.children(progress_bar_val_parent) progress_bar_val = progress_bar_val_parents_children[1] return progress_bar_val.text.toUtf8().constData() def verify_the_progress(value, final_msg_posted) -> None: """ Method to verify the progress @param value: int single message """ progress = pyInt(get_progress())-1 if final_msg_posted is True: test.xcompare(value, progress, "Final value " + "{value} should ".format(value=value) + "not reflect on the progress bar") elif final_msg_posted is False: test.compare(value, progress, "{value}".format(value=value) + " should reflect on progress bar") def post_a_message_and_verify_progress_and_completion(msgs_and_conditions): """ method to post a message and verify the progress bar and if final message is posted """ for msg, conditions in msgs_and_conditions.items(): final_msg = conditions[0] final_msg_posted = conditions[1] hd.cmd_send_hd_post(msg, final_msg, final_msg_posted) utils.waitForGUI(2) verify_the_progress(value=msg, final_msg_posted=final_msg_posted) verify_final_message_posted(final_msg=final_msg, final_msg_posted=final_msg_posted) def verify_final_message_posted(final_msg=None, final_msg_posted=None) -> None: """ method to verify the indication of final message posted @param final_msg: bool final message(True/False) @param final_msg_posted: bool if this is the final post message(True/False) @return: None """ test.startSection("Verifying the status") if final_msg == True and final_msg_posted == True: if object.exists(names.o_done_indicator): done_indicator = waitForObject(names.o_done_indicator) test.compare(done_indicator.enabled, True, "Done, Final value passed") elif (final_msg == False and final_msg_posted == True) : if object.exists(names.o_fail_indicator): fail_indicator = waitForObject(names.o_fail_indicator) test.compare(fail_indicator.enabled, True, "Failed, Final value not passed") elif (final_msg == True and final_msg_posted == False)\ or (final_msg == False and final_msg_posted == False): if object.exists(names.o_busy_indicator): busy_indicator = waitForObject(names.o_busy_indicator) test.compare(busy_indicator.enabled, True, "Waiting for a value") test.endSection() def main(): utils.tstStart(__file__) startApplication(AUT_NAME) >>>>>>> origin/diality_initialization_screen hd = HDSimulator() hd.cmd_send_power_on_self_test_version_request() <<<<<<< HEAD for i in range(20): hd.cmd_send_hd_post(i, True, False) sleep(0.1) hd.cmd_send_hd_post(0, True, True) hd.cmd_send_hd_operation_mode(4, 0) unittests.test_python_version() unittests.test_crc8() unittests.test_can0() ======= post_a_message_and_verify_progress_and_completion(MSGS_AND_CONDITIONS) utils.waitForGUI(2) >>>>>>> origin/diality_initialization_screen utils.tstDone()