Index: shared/scripts/denaliMessages.py =================================================================== diff -u -r34ec092c464500431f428cadea93696885cc15e0 -r40568c277aa2c01963d0f3f9da41748c2686d343 --- shared/scripts/denaliMessages.py (.../denaliMessages.py) (revision 34ec092c464500431f428cadea93696885cc15e0) +++ shared/scripts/denaliMessages.py (.../denaliMessages.py) (revision 40568c277aa2c01963d0f3f9da41748c2686d343) @@ -61,9 +61,10 @@ def show_PowerOffRejectionDialog(): subprocess.call(['cansend', 'can0', '020#A5.01.00.01.00.01.02.5A']) -# This message needs to be acknowledged by seq# 01.00 : just call send_acknowledge_UI after this +## ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +## ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ def buildSetTreatmentParamRanges(vMinTreatmentDuration, vMaxTreatmentDuration, vMinUFVolume, vMaxUFVolume, vMinDialysateFlowRate, vMaxDialysateFlowRate): - msg = messageBuilder.buildMessage( 5, 4 * 7, + msg = messageBuilder.buildMessage( GuiActionType.TreatmentRanges, 4 * 6, utils.toU32(vMinTreatmentDuration), utils.toU32(vMaxTreatmentDuration), utils.toU32(vMinUFVolume ), @@ -72,13 +73,16 @@ utils.toU32(vMaxDialysateFlowRate) ) return messageBuilder.toFrames(msg) - -def setTreatmentParamRanges(): # ---------------vvvvv---------------- - subprocess.call(['cansend', 'can0', '040#A5.FF.FF.1A.00.18.02.00']) - subprocess.call(['cansend', 'can0', '040#00.00.E0.01.00.00.00.00']) - subprocess.call(['cansend', 'can0', '040#00.00.9A.09.00.00.96.00']) - subprocess.call(['cansend', 'can0', '040#00.00.26.02.00.00.C6.00']) +## ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +def setTreatmentParamRanges(vMinTreatmentDuration, vMaxTreatmentDuration, vMinUFVolume, vMaxUFVolume, vMinDialysateFlowRate, vMaxDialysateFlowRate): + # This message needs to be acknowledged by seq# 01.00 : just call send_acknowledge_UI after this + # ------------------------------------------vvvvv----------------------------------------------- + frames = buildSetTreatmentParamRanges(vMinTreatmentDuration, vMaxTreatmentDuration, vMinUFVolume, vMaxUFVolume, vMinDialysateFlowRate, vMaxDialysateFlowRate) + frames = messageBuilder.toCandumpFormat(frames) + for frame in frames: + subprocess.call(['cansend', 'can0', '020#{}'.format(frame)]) + ## ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ## ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ def buildSetTreatmentBloodFlowRate(vFlowSetPt, vMeasFlow = 0, vRotSpd = 0, vMotSpd = 0, vMCSpd = 0, vMCCurr = 0, vPWM = 0): @@ -139,6 +143,22 @@ ## ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ## ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +def buildTreatmentTime(vSecsTotal, vSecsElap, vSecsRem): + msg = messageBuilder.buildMessage( GuiActionType.TreatmentTime, 3 * 4, + utils.toU32(vSecsTotal ), + utils.toU32(vSecsElap ), + utils.toU32(vSecsRem ) + ) + return messageBuilder.toFrames(msg) +## ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +def setTreatmentTime(vSecsTotal, vSecsElap, vSecsRem): + frames = buildTreatmentTime(vSecsTotal, vSecsElap, vSecsRem) + frames = messageBuilder.toCandumpFormat(frames) + for frame in frames: + subprocess.call(['cansend', 'can0', '040#{}'.format(frame)]) + +## ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +## ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ def buildAlarm(vState, vTop, vEsclatesIn, vSilentExpires, vFlags): msg = messageBuilder.buildMessage( GuiActionType.AlarmStatus, 4 * 4 + 2, utils.toU32(vState ), @@ -155,4 +175,3 @@ for frame in frames: subprocess.call(['cansend', 'can0', '001#{}'.format(frame)]) - Index: shared/scripts/names.py =================================================================== diff -u -r40df2a58a855b561c1ca8dabd3b272ac48b8924e -r40568c277aa2c01963d0f3f9da41748c2686d343 --- shared/scripts/names.py (.../names.py) (revision 40df2a58a855b561c1ca8dabd3b272ac48b8924e) +++ shared/scripts/names.py (.../names.py) (revision 40568c277aa2c01963d0f3f9da41748c2686d343) @@ -74,3 +74,8 @@ o_treatmentStart_225_Text = {"container": o_treatmentStart_TreatmentStart, "text": 225, "type": "Text", "unnamed": 1, "visible": True} o_treatmentStart_200_Text = {"container": o_treatmentStart_TreatmentStart, "text": 200, "type": "Text", "unnamed": 1, "visible": True} o_TouchRect = {"container": o_Overlay, "type": "TouchRect", "unnamed": 1, "visible": True} + +# Treatment Time +o_treatmentStart_01_Text = {"container": o_treatmentStart_TreatmentStart, "text": "01", "type": "Text", "unnamed": 1, "visible": True} +o_treatmentStart_00_Text = {"container": o_treatmentStart_TreatmentStart, "occurrence": 2, "text": "00", "type": "Text", "unnamed": 1, "visible": True} +o_treatmentStart_59_Text = {"container": o_treatmentStart_TreatmentStart, "text": 59, "type": "Text", "unnamed": 1, "visible": True} Index: suite.conf =================================================================== diff -u -r34ec092c464500431f428cadea93696885cc15e0 -r40568c277aa2c01963d0f3f9da41748c2686d343 --- suite.conf (.../suite.conf) (revision 34ec092c464500431f428cadea93696885cc15e0) +++ suite.conf (.../suite.conf) (revision 40568c277aa2c01963d0f3f9da41748c2686d343) @@ -5,6 +5,6 @@ IMPLICITAUTSTART=0 LANGUAGE=Python OBJECTMAPSTYLE=script -TEST_CASES=tst_GlobalTests tst_HomeScreen tst_ServiceShutdown tst_TreatmentScreen tst_Treatment_BloodDialysate_Section tst_Treatment_ParametersRange tst_Treatment_Adjustment_BloodDialysate tst_Alarm +TEST_CASES=tst_GlobalTests tst_HomeScreen tst_ServiceShutdown tst_TreatmentScreen tst_Treatment_BloodDialysate_Section tst_Treatment_ParametersRange tst_Treatment_Adjustment_BloodDialysate tst_TreatmentTime tst_Alarm VERSION=3 WRAPPERS=Qt Index: tst_TreatmentTime/test.py =================================================================== diff -u --- tst_TreatmentTime/test.py (revision 0) +++ tst_TreatmentTime/test.py (revision 40568c277aa2c01963d0f3f9da41748c2686d343) @@ -0,0 +1,38 @@ +# -*- 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_TreatmentTime +# date 2020/04/10 +# author Behrouz NematiPour +# + +import names +import time +import denaliMessages + +def gotoScreenNtest_Contains_TimeSection(): + mouseClick(waitForObject(names.o_treatmentHome_startTreatment)) + test.compare(waitForObjectExists(names.o_treatmentStart_shape_Shape).visible, True) + +def main(): + startApplication("denaliSquish") + + gotoScreenNtest_Contains_TimeSection() + time.sleep(1) + total = 60 + + denaliMessages.setTreatmentTime(total, 0, total) + test.compare(waitForObjectExists(names.o_treatmentStart_shape_Shape).parent.parent.parent.parent.maximum, total) + test.compare(waitForObjectExists(names.o_treatmentStart_shape_Shape).parent.parent.parent.parent.minimum, 0) + + for i in range(0,total+1): + denaliMessages.setTreatmentTime(total, i, total - i) + test.compare(waitForObjectExists(names.o_treatmentStart_shape_Shape).parent.parent.parent.parent.progressValue, i) + test.compare(waitForObjectExists(names.o_treatmentStart_shape_Shape).parent.parent.parent.parent.timeTextValue, total - i) + denaliMessages.setTreatmentTime(total, 0, total) Index: tst_Treatment_Adjustment_BloodDialysate/test.py =================================================================== diff -u -r34ec092c464500431f428cadea93696885cc15e0 -r40568c277aa2c01963d0f3f9da41748c2686d343 --- tst_Treatment_Adjustment_BloodDialysate/test.py (.../test.py) (revision 34ec092c464500431f428cadea93696885cc15e0) +++ tst_Treatment_Adjustment_BloodDialysate/test.py (.../test.py) (revision 40568c277aa2c01963d0f3f9da41748c2686d343) @@ -36,7 +36,7 @@ gotoScreenNTest_Contains_Ranges() time.sleep(1) - denaliMessages.setTreatmentParamRanges() + denaliMessages.setTreatmentParamRanges(0, 0, 0, 0, 150, 550) denaliMessages.send_acknowledge_UI() mouseClick(waitForObject(names.o_bloodFlowSlider_Slider), 190, 4, Qt.LeftButton) Index: tst_Treatment_ParametersRange/test.py =================================================================== diff -u -r40df2a58a855b561c1ca8dabd3b272ac48b8924e -r40568c277aa2c01963d0f3f9da41748c2686d343 --- tst_Treatment_ParametersRange/test.py (.../test.py) (revision 40df2a58a855b561c1ca8dabd3b272ac48b8924e) +++ tst_Treatment_ParametersRange/test.py (.../test.py) (revision 40568c277aa2c01963d0f3f9da41748c2686d343) @@ -38,7 +38,7 @@ gotoScreenNTest_Contains_Ranges() time.sleep(1) - denaliMessages.setTreatmentParamRanges() + denaliMessages.setTreatmentParamRanges(0, 0, 0, 0, 150, 550) denaliMessages.send_acknowledge_UI() test_Dialysate_Ranges()