| /////////////////////////////////////////////////////////////////////////////// |
| // // |
| // Copyright (c) 2000-2017 Ericsson Telecom AB // |
| // // |
| // All rights reserved. This program and the accompanying materials // |
| // are made available under the terms of the Eclipse Public License v2.0 // |
| // which accompanies this distribution, and is available at // |
| // https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html // |
| /////////////////////////////////////////////////////////////////////////////// |
| |
| /////////////////////////////////////////////////////////// |
| // Module: EPTF_Variable_Test_Functions |
| // |
| // Purpose: |
| // This module contains the test functions of generic EPTF Variable. |
| // |
| // Module depends on: |
| // <EPTF_Variable_Test_Definitions> |
| // <EPTF_CLL_Variable_Definitions> |
| // <EPTF_CLL_Variable_Functions> |
| // <EPTF_CLL_Base_Functions> |
| // <EPTF_CLL_Common_Definitions> |
| // |
| // |
| // Current Owner: |
| // Balazs Barcsik (EBALBAR) |
| // |
| // Last Review Date: |
| // 2007-xx-xx |
| // |
| // Detailed Comments: |
| // - |
| // |
| /////////////////////////////////////////////////////////////// |
| module EPTF_Variable_Test_Functions { |
| //========================================================================= |
| // Import part |
| //========================================================================= |
| import from EPTF_Variable_Test_Definitions all; |
| import from EPTF_CLL_Variable_Definitions all; |
| import from EPTF_CLL_Variable_Functions all; |
| import from EPTF_CLL_Base_Functions all; |
| import from EPTF_CLL_Common_Definitions all; |
| |
| //========================================================================= |
| // Calculating Functions |
| //========================================================================= |
| function f_calculationInt(in integer pl_idx, in EPTF_IntegerList pl_argList, in EPTF_IntegerList pl_nonVarArgList, inout EPTF_Var_DirectContent pl_retVal) runs on EPTF_Var_CT { |
| pl_retVal:= {intVal:=2*f_EPTF_Var_getIntValue(pl_argList[0])}; |
| } |
| |
| function f_calculationFloat(in integer pl_idx, in EPTF_IntegerList pl_argList, in EPTF_IntegerList pl_nonVarArgList, inout EPTF_Var_DirectContent pl_retVal) runs on EPTF_Var_CT { |
| pl_retVal:= {floatVal:=2.0*f_EPTF_Var_getFloatValue(pl_argList[0])}; |
| } |
| |
| function f_calculationBoolean(in integer pl_idx, in EPTF_IntegerList pl_argList, in EPTF_IntegerList pl_nonVarArgList, inout EPTF_Var_DirectContent pl_retVal) runs on EPTF_Var_CT { |
| if (f_EPTF_Var_getBoolValue(pl_argList[0]) == true) {pl_retVal:= {boolVal:=false};} |
| else {pl_retVal:= {boolVal:=true};} |
| } |
| |
| function f_calculationCharstring(in integer pl_idx, in EPTF_IntegerList pl_argList, in EPTF_IntegerList pl_nonVarArgList, inout EPTF_Var_DirectContent pl_retVal) runs on EPTF_Var_CT { |
| pl_retVal:= {charstringVal:=f_EPTF_Var_getCharstringValue(pl_argList[0])&f_EPTF_Var_getCharstringValue(pl_argList[0])}; |
| } |
| |
| function f_calculationOctetstring(in integer pl_idx, in EPTF_IntegerList pl_argList, in EPTF_IntegerList pl_nonVarArgList, inout EPTF_Var_DirectContent pl_retVal) runs on EPTF_Var_CT { |
| pl_retVal:= {octetstringVal:=f_EPTF_Var_getOctetstringValue(pl_argList[0])&f_EPTF_Var_getOctetstringValue(pl_argList[0])}; |
| } |
| |
| function f_calculationHexstring(in integer pl_idx, in EPTF_IntegerList pl_argList, in EPTF_IntegerList pl_nonVarArgList, inout EPTF_Var_DirectContent pl_retVal) runs on EPTF_Var_CT { |
| pl_retVal:= {hexstringVal:=f_EPTF_Var_getHexstringValue(pl_argList[0])&f_EPTF_Var_getHexstringValue(pl_argList[0])}; |
| } |
| |
| function f_calculationBitstring(in integer pl_idx, in EPTF_IntegerList pl_argList, in EPTF_IntegerList pl_nonVarArgList, inout EPTF_Var_DirectContent pl_retVal) runs on EPTF_Var_CT { |
| pl_retVal:= {bitstringVal:=f_EPTF_Var_getBitstringValue(pl_argList[0])&f_EPTF_Var_getBitstringValue(pl_argList[0])}; |
| } |
| |
| function f_calculationIntegerlist(in integer pl_idx, in EPTF_IntegerList pl_argList, in EPTF_IntegerList pl_nonVarArgList, inout EPTF_Var_DirectContent pl_retVal) runs on EPTF_Var_CT { |
| pl_retVal:= {integerlistVal:=f_EPTF_Var_getIntegerlistValue(pl_argList[0])}; |
| } |
| |
| function f_calculationFloatlist(in integer pl_idx, in EPTF_IntegerList pl_argList, in EPTF_IntegerList pl_nonVarArgList, inout EPTF_Var_DirectContent pl_retVal) runs on EPTF_Var_CT { |
| pl_retVal:= {floatlistVal:=f_EPTF_Var_getFloatlistValue(pl_argList[0])}; |
| } |
| |
| function f_calculationCharstringlist(in integer pl_idx, in EPTF_IntegerList pl_argList, in EPTF_IntegerList pl_nonVarArgList, inout EPTF_Var_DirectContent pl_retVal) runs on EPTF_Var_CT { |
| pl_retVal:= {charstringlistVal:=f_EPTF_Var_getCharstringlistValue(pl_argList[0])}; |
| } |
| |
| function f_calculationStatusLED(in integer pl_idx, in EPTF_IntegerList pl_argList, in EPTF_IntegerList pl_nonVarArgList, inout EPTF_Var_DirectContent pl_retVal) runs on EPTF_Var_CT { |
| pl_retVal:= {statusLEDVal:=f_EPTF_Var_getStatusLEDValue(pl_argList[0])}; |
| } |
| |
| function f_calculationSum(in integer pl_idx, in EPTF_IntegerList pl_argList, in EPTF_IntegerList pl_nonVarArgList, inout EPTF_Var_DirectContent pl_retVal) runs on EPTF_Var_CT { |
| pl_retVal := {intVal := 0}; |
| for(var integer i:=0; i<sizeof(pl_argList); i:=i+1) { |
| pl_retVal.intVal := pl_retVal.intVal + f_EPTF_Var_getIntValue(pl_argList[i]); |
| } |
| } |
| |
| //========================================================================= |
| // Guard Functions |
| //========================================================================= |
| function f_guard_Int(in integer pl_idx, in EPTF_IntegerList pl_argList, in EPTF_Var_DirectContent pl_newContent) runs on EPTF_Var_CT return boolean { |
| var integer vl_value := pl_newContent.intVal; |
| return (vl_value == 1); |
| } |
| |
| function f_guard_Float(in integer pl_idx, in EPTF_IntegerList pl_argList, in EPTF_Var_DirectContent pl_newContent) runs on EPTF_Var_CT return boolean { |
| var float vl_value := pl_newContent.floatVal; |
| return (vl_value == 1.0); |
| } |
| |
| function f_guard_Boolean(in integer pl_idx, in EPTF_IntegerList pl_argList, in EPTF_Var_DirectContent pl_newContent) runs on EPTF_Var_CT return boolean { |
| var boolean vl_value := pl_newContent.boolVal; |
| return (vl_value == true); |
| } |
| |
| function f_guard_Charstring(in integer pl_idx, in EPTF_IntegerList pl_argList, in EPTF_Var_DirectContent pl_newContent) runs on EPTF_Var_CT return boolean { |
| var charstring vl_value := pl_newContent.charstringVal; |
| return (vl_value == "1"); |
| } |
| |
| function f_guard_Octetstring(in integer pl_idx, in EPTF_IntegerList pl_argList, in EPTF_Var_DirectContent pl_newContent) runs on EPTF_Var_CT return boolean { |
| var octetstring vl_value := pl_newContent.octetstringVal; |
| return (vl_value == '01'O); |
| } |
| |
| function f_guard_Hexstring(in integer pl_idx, in EPTF_IntegerList pl_argList, in EPTF_Var_DirectContent pl_newContent) runs on EPTF_Var_CT return boolean { |
| var hexstring vl_value := pl_newContent.hexstringVal; |
| return (vl_value == '01'H); |
| } |
| |
| function f_guard_Bitstring(in integer pl_idx, in EPTF_IntegerList pl_argList, in EPTF_Var_DirectContent pl_newContent) runs on EPTF_Var_CT return boolean { |
| var bitstring vl_value := pl_newContent.bitstringVal; |
| return (vl_value == '01'B); |
| } |
| |
| function f_guard_Integerlist(in integer pl_idx, in EPTF_IntegerList pl_argList, in EPTF_Var_DirectContent pl_newContent) runs on EPTF_Var_CT return boolean { |
| var EPTF_IntegerList vl_value := pl_newContent.integerlistVal; |
| return (vl_value == {0,1}); |
| } |
| |
| function f_guard_Floatlist(in integer pl_idx, in EPTF_IntegerList pl_argList, in EPTF_Var_DirectContent pl_newContent) runs on EPTF_Var_CT return boolean { |
| var EPTF_FloatList vl_value := pl_newContent.floatlistVal; |
| return (vl_value == {0.0,1.0}); |
| } |
| |
| function f_guard_Charstringlist(in integer pl_idx, in EPTF_IntegerList pl_argList, in EPTF_Var_DirectContent pl_newContent) runs on EPTF_Var_CT return boolean { |
| var EPTF_CharstringList vl_value := pl_newContent.charstringlistVal; |
| return (vl_value == {"0","1"}); |
| } |
| |
| function f_guard_StatusLED(in integer pl_idx, in EPTF_IntegerList pl_argList, in EPTF_Var_DirectContent pl_newContent) runs on EPTF_Var_CT return boolean { |
| var EPTF_StatusLED vl_value := pl_newContent.statusLEDVal; |
| return (vl_value == {led_blue,"1"}); |
| } |
| |
| //========================================================================= |
| // PosProc Functions |
| //========================================================================= |
| |
| function f_postProc_incrementValue(in integer pl_idx, in EPTF_IntegerList pl_argList) runs on VariableTest_CT { |
| v_inc := v_inc+1; |
| } |
| |
| //========================================================================= |
| // User Defined Functions |
| //========================================================================= |
| |
| function f_setverdictFail(in boolean pl_condition) { |
| if (pl_condition) { |
| setverdict(fail); |
| } |
| } |
| |
| function f_sendstatusPort1(in boolean pl_statusPortmsg, in VariableTest_CT pl_remoteCompRef) runs on VariableTest_CT{ |
| statusPort1.send(pl_statusPortmsg) to pl_remoteCompRef; |
| } |
| |
| function f_sendstatusPort2(in boolean pl_statusPortmsg, in VariableTest_CT pl_remoteCompRef) runs on VariableTest_CT{ |
| statusPort2.send(pl_statusPortmsg) to pl_remoteCompRef; |
| } |
| |
| //This function initalize the provider variables |
| function f_initVariables() runs on VariableTest_CT{ |
| |
| f_EPTF_Var_newInt("intVar",1, v_intVarIdx); |
| f_EPTF_Var_CT_LogAll("----- newInt -------"); |
| f_EPTF_Var_Log("--intVar--",v_intVarIdx); |
| |
| f_EPTF_Var_newFloat("floatVar", 1.0, v_floatVarIdx); |
| f_EPTF_Var_CT_LogAll("----- newFloat -------"); |
| f_EPTF_Var_Log("--floatVar--",v_floatVarIdx); |
| |
| f_EPTF_Var_newBool("boolVar", true, v_boolVarIdx); |
| f_EPTF_Var_CT_LogAll("----- newBool -------"); |
| f_EPTF_Var_Log("--boolVar--",v_boolVarIdx); |
| |
| f_EPTF_Var_newCharstring("charstringVar", "1.0", v_charstringVarIdx); |
| f_EPTF_Var_CT_LogAll("----- newCharstring -------"); |
| f_EPTF_Var_Log("--charstringVar--",v_charstringVarIdx); |
| |
| f_EPTF_Var_newOctetstring("octetstringVar", '01'O, v_octetstringVarIdx); |
| f_EPTF_Var_CT_LogAll("----- newOctetstring -------"); |
| f_EPTF_Var_Log("--octetstringVar--",v_octetstringVarIdx); |
| |
| f_EPTF_Var_newHexstring("hexstringVar", '01'H, v_hexstringVarIdx); |
| f_EPTF_Var_CT_LogAll("----- newHexstring -------"); |
| f_EPTF_Var_Log("--hexstringVar--",v_hexstringVarIdx); |
| |
| f_EPTF_Var_newBitstring("bitstringVar", '01'B, v_bitstringVarIdx); |
| f_EPTF_Var_CT_LogAll("----- newBitstring -------"); |
| f_EPTF_Var_Log("--bitstringVar--",v_bitstringVarIdx); |
| |
| f_EPTF_Var_newIntegerlist("integerlistVar", {0,1}, v_integerlistVarIdx); |
| f_EPTF_Var_CT_LogAll("----- newIntegerlist -------"); |
| f_EPTF_Var_Log("--integerlistVar--",v_integerlistVarIdx); |
| |
| f_EPTF_Var_newFloatlist("floatlistVar", {0.0,1.0}, v_floatlistVarIdx); |
| f_EPTF_Var_CT_LogAll("----- newFloatlist -------"); |
| f_EPTF_Var_Log("--floatlistVar--",v_floatlistVarIdx); |
| |
| f_EPTF_Var_newCharstringlist("charstringlistVar", {"0","1"}, v_charstringlistVarIdx); |
| f_EPTF_Var_CT_LogAll("----- newCharstringlist -------"); |
| f_EPTF_Var_Log("--charstringlistVar--",v_charstringlistVarIdx); |
| |
| f_EPTF_Var_newStatusLED("statusLEDVar", {led_blue,"1"}, v_statusLEDVarIdx); |
| f_EPTF_Var_CT_LogAll("----- newStatusLED -------"); |
| f_EPTF_Var_Log("--statusLEDVar--",v_statusLEDVarIdx); |
| |
| f_EPTF_Var_newIntRef("intVarRef",v_intVar,v_intVarRefIdx); |
| f_EPTF_Var_CT_LogAll("----- newIntRef -------"); |
| f_EPTF_Var_Log("--var--",v_intVarRefIdx); |
| |
| f_EPTF_Var_newFloatRef("floatVarRef", v_floatVar,v_floatVarRefIdx); |
| f_EPTF_Var_CT_LogAll("----- newFloatRef -------"); |
| f_EPTF_Var_Log("--var--",v_floatVarRefIdx); |
| |
| f_EPTF_Var_newBoolRef("boolVarRef", v_boolVar,v_boolVarRefIdx); |
| f_EPTF_Var_CT_LogAll("----- newBoolRef -------"); |
| f_EPTF_Var_Log("--var--",v_boolVarRefIdx); |
| |
| f_EPTF_Var_newCharstringRef("charstringVarRef", v_charstringVar,v_charstringVarRefIdx); |
| f_EPTF_Var_CT_LogAll("----- newCharstringRef -------"); |
| f_EPTF_Var_Log("--var--",v_charstringVarRefIdx); |
| |
| f_EPTF_Var_newOctetstringRef("octetstringVarRef", v_octetstringVar,v_octetstringVarRefIdx); |
| f_EPTF_Var_CT_LogAll("----- newOctetstringRef -------"); |
| f_EPTF_Var_Log("--var--",v_octetstringVarRefIdx); |
| |
| f_EPTF_Var_newHexstringRef("hexstringVarRef", v_hexstringVar,v_hexstringVarRefIdx); |
| f_EPTF_Var_CT_LogAll("----- newHexstringRef -------"); |
| f_EPTF_Var_Log("--var--",v_hexstringVarRefIdx); |
| |
| f_EPTF_Var_newBitstringRef("bitstringVarRef", v_bitstringVar,v_bitstringVarRefIdx); |
| f_EPTF_Var_CT_LogAll("----- newBitstringRef -------"); |
| f_EPTF_Var_Log("--var--",v_bitstringVarRefIdx); |
| |
| f_EPTF_Var_newIntegerlistRef("integerlistVarRef", v_integerlistVar,v_integerlistVarRefIdx); |
| f_EPTF_Var_CT_LogAll("----- newIntegerlistRef -------"); |
| f_EPTF_Var_Log("--var--",v_integerlistVarRefIdx); |
| |
| f_EPTF_Var_newFloatlistRef("floatlistVarRef", v_floatlistVar,v_floatlistVarRefIdx); |
| f_EPTF_Var_CT_LogAll("----- newFloatlistRef -------"); |
| f_EPTF_Var_Log("--var--",v_floatlistVarRefIdx); |
| |
| f_EPTF_Var_newCharstringlistRef("charstringlistVarRef", v_charstringlistVar,v_charstringlistVarRefIdx); |
| f_EPTF_Var_CT_LogAll("----- newCharstringlistRef -------"); |
| f_EPTF_Var_Log("--var--",v_charstringlistVarRefIdx); |
| |
| f_EPTF_Var_newStatusLEDRef("statusLEDVarRef", v_statusLEDVar,v_statusLEDVarRefIdx); |
| f_EPTF_Var_CT_LogAll("----- newStatusLEDRef -------"); |
| f_EPTF_Var_Log("--var--",v_statusLEDVarRefIdx); |
| |
| } |
| |
| //This function initialize the subscriber variables and subscribe the variables to the providers |
| function f_subscribeVariables(in VariableTest_CT_List pl_parents, in EPTF_Var_SubscriptionMode pl_buffered ) runs on VariableTest_CT{ |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"intVarRef",pl_buffered, v_remoteIntSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"floatVarRef",pl_buffered, v_remoteFloatSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"boolVarRef",pl_buffered, v_remoteBoolSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"charstringVarRef",pl_buffered, v_remoteCharstringSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"octetstringVarRef",pl_buffered, v_remoteOctetstringSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"hexstringVarRef",pl_buffered, v_remoteHexstringSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"bitstringVarRef",pl_buffered, v_remoteBitstringSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"integerlistVarRef",pl_buffered, v_remoteIntegerlistSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"floatlistVarRef",pl_buffered, v_remoteFloatlistSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"charstringlistVarRef",pl_buffered, v_remoteCharstringlistSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"statusLEDVarRef",pl_buffered, v_remoteStatusLEDSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemoteIntRef(v_intVar,pl_parents[0],"intVar",pl_buffered, v_remoteIntSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteFloatRef(v_floatVar,pl_parents[0],"floatVar",pl_buffered, v_remoteFloatSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteBoolRef(v_boolVar,pl_parents[0],"boolVar",pl_buffered, v_remoteBoolSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteCharstringRef(v_charstringVar,pl_parents[0],"charstringVar",pl_buffered, v_remoteCharstringSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteOctetstringRef(v_octetstringVar,pl_parents[0],"octetstringVar",pl_buffered, v_remoteOctetstringSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteHexstringRef(v_hexstringVar,pl_parents[0],"hexstringVar",pl_buffered, v_remoteHexstringSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteBitstringRef(v_bitstringVar,pl_parents[0],"bitstringVar",pl_buffered, v_remoteBitstringSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteIntegerlistRef(v_integerlistVar,pl_parents[0],"integerlistVar",pl_buffered, v_remoteIntegerlistSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteFloatlistRef(v_floatlistVar,pl_parents[0],"floatlistVar",pl_buffered, v_remoteFloatlistSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteCharstringlistRef(v_charstringlistVar,pl_parents[0],"charstringlistVar",pl_buffered, v_remoteCharstringlistSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteStatusLEDValRef(v_statusLEDVar,pl_parents[0],"statusLEDVar",pl_buffered, v_remoteStatusLEDSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| } |
| |
| //========================================================================= |
| // Test Functions |
| //========================================================================= |
| function f_EPTF_Var_CreateAndModifyTest (in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT{ |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT -------"); |
| |
| var integer vl_intValue; |
| var float vl_floatValue; |
| var boolean vl_boolValue; |
| var charstring vl_charstringValue; |
| var octetstring vl_octetstringValue; |
| var hexstring vl_hexstringValue; |
| var bitstring vl_bitstringValue; |
| var EPTF_IntegerList vl_integerlistValue; |
| var EPTF_FloatList vl_floatlistValue; |
| var EPTF_CharstringList vl_charstringlistValue; |
| var EPTF_StatusLED vl_statusLEDValue; |
| |
| |
| f_EPTF_Var_newIntRef("intVarRef",v_intVar,v_intVarRefIdx); |
| vl_intValue := f_EPTF_Var_getIntValue(v_intVarRefIdx); |
| f_setverdictFail((v_intVar!=1)or(v_intVar!=vl_intValue)); |
| |
| f_EPTF_Var_setContent(v_intVarRefIdx,{intVal:=2}); |
| vl_intValue := f_EPTF_Var_getIntValue(v_intVarRefIdx); |
| f_setverdictFail((v_intVar!=2)or(v_intVar!=vl_intValue)); |
| |
| f_EPTF_Var_newInt("intVar",10, v_intVarIdx); |
| vl_intValue := f_EPTF_Var_getIntValue(v_intVarIdx); |
| f_setverdictFail((vl_intValue!=10)); |
| |
| f_EPTF_Var_setContent(v_intVarIdx,{intVal:=20}); |
| vl_intValue := f_EPTF_Var_getIntValue(v_intVarIdx); |
| f_setverdictFail((vl_intValue!=20)or(v_intVar!=2)); |
| |
| |
| f_EPTF_Var_newFloatRef("floatVarRef", v_floatVar,v_floatVarRefIdx); |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_floatVarRefIdx); |
| f_setverdictFail((v_floatVar!=1.0)or(v_floatVar!=vl_floatValue)); |
| |
| f_EPTF_Var_setContent(v_floatVarRefIdx,{floatVal:=2.0}); |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_floatVarRefIdx); |
| f_setverdictFail((v_floatVar!=2.0)or(v_floatVar!=vl_floatValue)); |
| |
| f_EPTF_Var_newFloat("floatVar", 10.0, v_floatVarIdx); |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_floatVarIdx); |
| f_setverdictFail((vl_floatValue!=10.0)); |
| |
| f_EPTF_Var_setContent(v_floatVarIdx,{floatVal:=20.0}); |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_floatVarIdx); |
| f_setverdictFail((vl_floatValue!=20.0)or(v_floatVar!=2.0)); |
| |
| |
| f_EPTF_Var_newBoolRef("boolVarRef", v_boolVar,v_boolVarRefIdx); |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_boolVarRefIdx); |
| f_setverdictFail((v_boolVar!=true)or(v_boolVar!=vl_boolValue)); |
| |
| f_EPTF_Var_setContent(v_boolVarRefIdx,{boolVal:=false}); |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_boolVarRefIdx); |
| f_setverdictFail((v_boolVar!=false)or(v_boolVar!=vl_boolValue)); |
| |
| f_EPTF_Var_newBool("boolVar", true, v_boolVarIdx); |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_boolVarIdx); |
| f_setverdictFail((vl_boolValue!=true)); |
| |
| f_EPTF_Var_setContent(v_boolVarIdx,{boolVal:=false}); |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_boolVarIdx); |
| f_setverdictFail((vl_boolValue!=false)or(v_boolVar!=false)); |
| |
| |
| f_EPTF_Var_newCharstringRef("charstringVarRef", v_charstringVar,v_charstringVarRefIdx); |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_charstringVarRefIdx); |
| f_setverdictFail((v_charstringVar!="1.0")or(v_charstringVar!=vl_charstringValue)); |
| |
| f_EPTF_Var_setContent(v_charstringVarRefIdx,{charstringVal:="2.0"}); |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_charstringVarRefIdx); |
| f_setverdictFail((v_charstringVar!="2.0")or(v_charstringVar!=vl_charstringValue)); |
| |
| f_EPTF_Var_newCharstring("charstringVar", "10.0", v_charstringVarIdx); |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_charstringVarIdx); |
| f_setverdictFail((vl_charstringValue!="10.0")); |
| |
| f_EPTF_Var_setContent(v_charstringVarIdx,{charstringVal:="20.0"}); |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_charstringVarIdx); |
| f_setverdictFail((vl_charstringValue!="20.0")or(v_charstringVar!="2.0")); |
| |
| |
| f_EPTF_Var_newOctetstringRef("octetstringVarRef", v_octetstringVar,v_octetstringVarRefIdx); |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_octetstringVarRefIdx); |
| f_setverdictFail((v_octetstringVar!='01'O)or(v_octetstringVar!=vl_octetstringValue)); |
| |
| f_EPTF_Var_setContent(v_octetstringVarRefIdx,{octetstringVal:='02'O}); |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_octetstringVarRefIdx); |
| f_setverdictFail((v_octetstringVar!='02'O)or(v_octetstringVar!=vl_octetstringValue)); |
| |
| f_EPTF_Var_newOctetstring("octetstringVar", '10'O, v_octetstringVarIdx); |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_octetstringVarIdx); |
| f_setverdictFail((vl_octetstringValue!='10'O)); |
| |
| f_EPTF_Var_setContent(v_octetstringVarIdx,{octetstringVal:='20'O}); |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_octetstringVarIdx); |
| f_setverdictFail((vl_octetstringValue!='20'O)or(v_octetstringVar!='02'O)); |
| |
| |
| f_EPTF_Var_newHexstringRef("hexstringVarRef", v_hexstringVar,v_hexstringVarRefIdx); |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_hexstringVarRefIdx); |
| f_setverdictFail((v_hexstringVar!='01'H)or(v_hexstringVar!=vl_hexstringValue)); |
| |
| f_EPTF_Var_setContent(v_hexstringVarRefIdx,{hexstringVal:='02'H}); |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_hexstringVarRefIdx); |
| f_setverdictFail((v_hexstringVar!='02'H)or(v_hexstringVar!=vl_hexstringValue)); |
| |
| f_EPTF_Var_newHexstring("hexstringVar", '10'H, v_hexstringVarIdx); |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_hexstringVarIdx); |
| f_setverdictFail((vl_hexstringValue!='10'H)); |
| |
| f_EPTF_Var_setContent(v_hexstringVarIdx,{hexstringVal:='20'H}); |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_hexstringVarIdx); |
| f_setverdictFail((vl_hexstringValue!='20'H)or(v_hexstringVar!='02'H)); |
| |
| |
| f_EPTF_Var_newBitstringRef("bitstringVarRef", v_bitstringVar,v_bitstringVarRefIdx); |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_bitstringVarRefIdx); |
| f_setverdictFail((v_bitstringVar!='01'B)or(v_bitstringVar!=vl_bitstringValue)); |
| |
| f_EPTF_Var_setContent(v_bitstringVarRefIdx,{bitstringVal:='011'B}); |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_bitstringVarRefIdx); |
| f_setverdictFail((v_bitstringVar!='011'B)or(v_bitstringVar!=vl_bitstringValue)); |
| |
| f_EPTF_Var_newBitstring("bitstringVar", '10'B, v_bitstringVarIdx); |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_bitstringVarIdx); |
| f_setverdictFail((vl_bitstringValue!='10'B)); |
| |
| f_EPTF_Var_setContent(v_bitstringVarIdx,{bitstringVal:='110'B}); |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_bitstringVarIdx); |
| f_setverdictFail((vl_bitstringValue!='110'B)or(v_bitstringVar!='011'B)); |
| |
| |
| f_EPTF_Var_newIntegerlistRef("integerlistVarRef", v_integerlistVar,v_integerlistVarRefIdx); |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_integerlistVarRefIdx); |
| f_setverdictFail((v_integerlistVar!={0,1})or(v_integerlistVar!=vl_integerlistValue)); |
| |
| f_EPTF_Var_setContent(v_integerlistVarRefIdx,{integerlistVal:={0,2}}); |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_integerlistVarRefIdx); |
| f_setverdictFail((v_integerlistVar!={0,2})or(v_integerlistVar!=vl_integerlistValue)); |
| |
| f_EPTF_Var_newIntegerlist("integerlistVar", {1,0}, v_integerlistVarIdx); |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_integerlistVarIdx); |
| f_setverdictFail((vl_integerlistValue!={1,0})); |
| |
| f_EPTF_Var_setContent(v_integerlistVarIdx,{integerlistVal:={2,0}}); |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_integerlistVarIdx); |
| f_setverdictFail((vl_integerlistValue!={2,0})or(v_integerlistVar!={0,2})); |
| |
| |
| f_EPTF_Var_newFloatlistRef("floatlistVarRef", v_floatlistVar,v_floatlistVarRefIdx); |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_floatlistVarRefIdx); |
| f_setverdictFail((v_floatlistVar!={0.0,1.0})or(v_floatlistVar!=vl_floatlistValue)); |
| |
| f_EPTF_Var_setContent(v_floatlistVarRefIdx,{floatlistVal:={0.0,2.0}}); |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_floatlistVarRefIdx); |
| f_setverdictFail((v_floatlistVar!={0.0,2.0})or(v_floatlistVar!=vl_floatlistValue)); |
| |
| f_EPTF_Var_newFloatlist("floatlistVar", {1.0,0.0}, v_floatlistVarIdx); |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_floatlistVarIdx); |
| f_setverdictFail((vl_floatlistValue!={1.0,0.0})); |
| |
| f_EPTF_Var_setContent(v_floatlistVarIdx,{floatlistVal:={2.0,0.0}}); |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_floatlistVarIdx); |
| f_setverdictFail((vl_floatlistValue!={2.0,0.0})or(v_floatlistVar!={0.0,2.0})); |
| |
| |
| f_EPTF_Var_newCharstringlistRef("charstringlistVarRef", v_charstringlistVar,v_charstringlistVarRefIdx); |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_charstringlistVarRefIdx); |
| f_setverdictFail((v_charstringlistVar!={"0","1"})or(v_charstringlistVar!=vl_charstringlistValue)); |
| |
| f_EPTF_Var_setContent(v_charstringlistVarRefIdx,{charstringlistVal:={"0","2"}}); |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_charstringlistVarRefIdx); |
| f_setverdictFail((v_charstringlistVar!={"0","2"})or(v_charstringlistVar!=vl_charstringlistValue)); |
| |
| f_EPTF_Var_newCharstringlist("charstringlistVar", {"1","0"}, v_charstringlistVarIdx); |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_charstringlistVarIdx); |
| f_setverdictFail((vl_charstringlistValue!={"1","0"})); |
| |
| f_EPTF_Var_setContent(v_charstringlistVarIdx,{charstringlistVal:={"2","0"}}); |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_charstringlistVarIdx); |
| f_setverdictFail((vl_charstringlistValue!={"2","0"})or(v_charstringlistVar!={"0","2"})); |
| |
| |
| f_EPTF_Var_newStatusLEDRef("statusLEDVarRef", v_statusLEDVar,v_statusLEDVarRefIdx); |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_statusLEDVarRefIdx); |
| f_setverdictFail((v_statusLEDVar!={led_blue,"1"})or(v_statusLEDVar!=vl_statusLEDValue)); |
| |
| f_EPTF_Var_setContent(v_statusLEDVarRefIdx,{statusLEDVal:={led_black,"2"}}); |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_statusLEDVarRefIdx); |
| f_setverdictFail((v_statusLEDVar!={led_black,"2"})or(v_statusLEDVar!=vl_statusLEDValue)); |
| |
| f_EPTF_Var_newStatusLED("statusLEDVar", {led_yellow,"10"}, v_statusLEDVarIdx); |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_statusLEDVarIdx); |
| f_setverdictFail((vl_statusLEDValue!={led_yellow,"10"})); |
| |
| f_EPTF_Var_setContent(v_statusLEDVarIdx,{statusLEDVal:={led_green,"20"}}); |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_statusLEDVarIdx); |
| f_setverdictFail((vl_statusLEDValue!={led_green,"20"})or(v_statusLEDVar!={led_black,"2"})); |
| |
| f_EPTF_Base_stop(pass); |
| } |
| |
| function f_EPTF_Var_SubscribeTest_ProviderComponent(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT{ |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT -------"); |
| |
| //Create the provider variables |
| f_initVariables(); |
| |
| //Send ready message to the subscriber component |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| //Waiting for a ready message from the subscriber component |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout {} |
| } |
| |
| //Modify the values of the provider varibles |
| f_EPTF_Var_setContent(v_intVarRefIdx,{intVal:=3}); |
| f_EPTF_Var_setContent(v_floatVarRefIdx,{floatVal:=3.0}); |
| f_EPTF_Var_setContent(v_boolVarRefIdx,{boolVal:=true}); |
| f_EPTF_Var_setContent(v_charstringVarRefIdx,{charstringVal:="3.0"}); |
| f_EPTF_Var_setContent(v_octetstringVarRefIdx,{octetstringVal:='03'O}); |
| f_EPTF_Var_setContent(v_hexstringVarRefIdx,{hexstringVal:='03'H}); |
| f_EPTF_Var_setContent(v_bitstringVarRefIdx,{bitstringVal:='10'B}); |
| f_EPTF_Var_setContent(v_integerlistVarRefIdx,{integerlistVal:={0,3}}); |
| f_EPTF_Var_setContent(v_floatlistVarRefIdx,{floatlistVal:={0.0,3.0}}); |
| f_EPTF_Var_setContent(v_charstringlistVarRefIdx,{charstringlistVal:={"0","3"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarRefIdx,{statusLEDVal:={led_blue,"1"}}); |
| |
| f_EPTF_Var_setContent(v_intVarIdx,{intVal:=4}); |
| f_EPTF_Var_setContent(v_floatVarIdx,{floatVal:=4.0}); |
| f_EPTF_Var_setContent(v_boolVarIdx,{boolVal:=false}); |
| f_EPTF_Var_setContent(v_charstringVarIdx,{charstringVal:="4.0"}); |
| f_EPTF_Var_setContent(v_octetstringVarIdx,{octetstringVal:='04'O}); |
| f_EPTF_Var_setContent(v_hexstringVarIdx,{hexstringVal:='04'H}); |
| f_EPTF_Var_setContent(v_bitstringVarIdx,{bitstringVal:='11'B}); |
| f_EPTF_Var_setContent(v_integerlistVarIdx,{integerlistVal:={0,4}}); |
| f_EPTF_Var_setContent(v_floatlistVarIdx,{floatlistVal:={0.0,4.0}}); |
| f_EPTF_Var_setContent(v_charstringlistVarIdx,{charstringlistVal:={"0","4"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarIdx,{statusLEDVal:={led_black,"2"}}); |
| |
| f_EPTF_Var_refreshContent(v_intVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatVarRefIdx); |
| f_EPTF_Var_refreshContent(v_boolVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_octetstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_integerlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarRefIdx); |
| |
| f_EPTF_Var_refreshContent(v_intVarIdx); |
| f_EPTF_Var_refreshContent(v_floatVarIdx); |
| f_EPTF_Var_refreshContent(v_boolVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarIdx); |
| f_EPTF_Var_refreshContent(v_octetstringVarIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarIdx); |
| f_EPTF_Var_refreshContent(v_integerlistVarIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarIdx); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout {} |
| } |
| |
| //Send a ready message to the subscriber component |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| //Waiting to exit timeout |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_SubscribeTest_SubscriberComponent(in charstring pl_selfName, in VariableTest_CT_List pl_parents, in EPTF_Var_SubscriptionMode pl_subscriptionMode := realtime) runs on VariableTest_CT{ |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| //Waiting to the creation of the provider variables on the provider component |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| //Subscribe to the variables on the provider component |
| f_subscribeVariables(pl_parents,pl_subscriptionMode); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout {} |
| } |
| |
| //Send ready message to the provider component |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| //Waiting for the modification |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| //Define local variables storing the results of the get methods |
| var integer vl_intValue; |
| var float vl_floatValue; |
| var boolean vl_boolValue; |
| var charstring vl_charstringValue; |
| var octetstring vl_octetstringValue; |
| var hexstring vl_hexstringValue; |
| var bitstring vl_bitstringValue; |
| var EPTF_IntegerList vl_integerlistValue; |
| var EPTF_FloatList vl_floatlistValue; |
| var EPTF_CharstringList vl_charstringlistValue; |
| var EPTF_StatusLED vl_statusLEDValue; |
| |
| //Get and check the new values of the subscribed variables |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdx); |
| f_setverdictFail(vl_intValue!=3); |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdxRef); |
| f_setverdictFail(vl_intValue!=4); |
| |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdx); |
| f_setverdictFail(vl_floatValue!=3.0); |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdxRef); |
| f_setverdictFail(vl_floatValue!=4.0); |
| |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdx); |
| f_setverdictFail(vl_boolValue!=true); |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdxRef); |
| f_setverdictFail(vl_boolValue!=false); |
| |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdx); |
| f_setverdictFail(vl_charstringValue!="3.0"); |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdxRef); |
| f_setverdictFail(vl_charstringValue!="4.0"); |
| |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdx); |
| f_setverdictFail(vl_octetstringValue!='03'O); |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdxRef); |
| f_setverdictFail(vl_octetstringValue!='04'O); |
| |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdx); |
| f_setverdictFail(vl_hexstringValue!='03'H); |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdxRef); |
| f_setverdictFail(vl_hexstringValue!='04'H); |
| |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdx); |
| f_setverdictFail(vl_bitstringValue!='10'B); |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdxRef); |
| f_setverdictFail(vl_bitstringValue!='11'B); |
| |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdx); |
| f_setverdictFail(vl_integerlistValue!={0,3}); |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdxRef); |
| f_setverdictFail(vl_integerlistValue!={0,4}); |
| |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdx); |
| f_setverdictFail(vl_floatlistValue!={0.0,3.0}); |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdxRef); |
| f_setverdictFail(vl_floatlistValue!={0.0,4.0}); |
| |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdx); |
| f_setverdictFail(vl_charstringlistValue!={"0","3"}); |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdxRef); |
| f_setverdictFail(vl_charstringlistValue!={"0","4"}); |
| |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdx); |
| f_setverdictFail(vl_statusLEDValue!={led_blue,"1"}); |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdxRef); |
| f_setverdictFail(vl_statusLEDValue!={led_black,"2"}); |
| |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_AdjustTest_ProviderComponent(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT{ |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| //Create the provider variables |
| f_initVariables(); |
| |
| //Send statusPort1 message after the creation |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| //Waiting for the subscribers |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| //Define local variables storing the results of the get methods |
| var integer vl_intValue; |
| var float vl_floatValue; |
| var boolean vl_boolValue; |
| var charstring vl_charstringValue; |
| var octetstring vl_octetstringValue; |
| var hexstring vl_hexstringValue; |
| var bitstring vl_bitstringValue; |
| var EPTF_IntegerList vl_integerlistValue; |
| var EPTF_FloatList vl_floatlistValue; |
| var EPTF_CharstringList vl_charstringlistValue; |
| var EPTF_StatusLED vl_statusLEDValue; |
| |
| //Get and check the values of the variables |
| vl_intValue := f_EPTF_Var_getIntValue(v_intVarRefIdx); |
| f_setverdictFail((v_intVar!=2)or(v_intVar!=vl_intValue)); |
| vl_intValue := f_EPTF_Var_getIntValue(v_intVarIdx); |
| f_setverdictFail((vl_intValue!=3)); |
| |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_floatVarRefIdx); |
| f_setverdictFail((v_floatVar!=2.0)or(v_floatVar!=vl_floatValue)); |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_floatVarIdx); |
| f_setverdictFail((vl_floatValue!=3.0)); |
| |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_boolVarRefIdx); |
| f_setverdictFail((v_boolVar!=false)or(v_boolVar!=vl_boolValue)); |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_boolVarIdx); |
| f_setverdictFail((vl_boolValue!=true)); |
| |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_charstringVarRefIdx); |
| f_setverdictFail((v_charstringVar!="2.0")or(v_charstringVar!=vl_charstringValue)); |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_charstringVarIdx); |
| f_setverdictFail((vl_charstringValue!="3.0")); |
| |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_octetstringVarRefIdx); |
| f_setverdictFail((v_octetstringVar!='02'O)or(v_octetstringVar!=vl_octetstringValue)); |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_octetstringVarIdx); |
| f_setverdictFail((vl_octetstringValue!='03'O)); |
| |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_hexstringVarRefIdx); |
| f_setverdictFail((v_hexstringVar!='02'H)or(v_hexstringVar!=vl_hexstringValue)); |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_hexstringVarIdx); |
| f_setverdictFail((vl_hexstringValue!='03'H)); |
| |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_bitstringVarRefIdx); |
| f_setverdictFail((v_bitstringVar!='11'B)or(v_bitstringVar!=vl_bitstringValue)); |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_bitstringVarIdx); |
| f_setverdictFail((vl_bitstringValue!='10'B)); |
| |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_integerlistVarRefIdx); |
| f_setverdictFail((v_integerlistVar!={0,2})or(v_integerlistVar!=vl_integerlistValue)); |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_integerlistVarIdx); |
| f_setverdictFail((vl_integerlistValue!={0,3})); |
| |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_floatlistVarRefIdx); |
| f_setverdictFail((v_floatlistVar!={0.0,2.0})or(v_floatlistVar!=vl_floatlistValue)); |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_floatlistVarIdx); |
| f_setverdictFail((vl_floatlistValue!={0.0,3.0})); |
| |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_charstringlistVarRefIdx); |
| f_setverdictFail((v_charstringlistVar!={"0","2"})or(v_charstringlistVar!=vl_charstringlistValue)); |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_charstringlistVarIdx); |
| f_setverdictFail((vl_charstringlistValue!={"0","3"})); |
| |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_statusLEDVarRefIdx); |
| f_setverdictFail((v_statusLEDVar!={led_black,"2"})or(v_statusLEDVar!=vl_statusLEDValue)); |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_statusLEDVarIdx); |
| f_setverdictFail((vl_statusLEDValue!={led_blue,"1"})); |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_AdjustTest_SubscriberComponent(in charstring pl_selfName, in VariableTest_CT_List pl_parents, in EPTF_Var_SubscriptionMode pl_subscriptionMode := realtime) runs on VariableTest_CT{ |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| //Waiting to the creation of the provider variables on the first component |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| //Subscribe to the variables on the provider component |
| f_subscribeVariables(pl_parents,pl_subscriptionMode); |
| |
| //Adjust the value of the variables |
| f_EPTF_Var_adjustContent(v_remoteIntSubscrIdx,{intVal:=2}); |
| f_EPTF_Var_adjustContent(v_remoteFloatSubscrIdx,{floatVal:=2.0}); |
| f_EPTF_Var_adjustContent(v_remoteBoolSubscrIdx,{boolVal:=false}); |
| f_EPTF_Var_adjustContent(v_remoteCharstringSubscrIdx,{charstringVal:="2.0"}); |
| f_EPTF_Var_adjustContent(v_remoteOctetstringSubscrIdx,{octetstringVal:='02'O}); |
| f_EPTF_Var_adjustContent(v_remoteHexstringSubscrIdx,{hexstringVal:='02'H}); |
| f_EPTF_Var_adjustContent(v_remoteBitstringSubscrIdx,{bitstringVal:='11'B}); |
| f_EPTF_Var_adjustContent(v_remoteIntegerlistSubscrIdx,{integerlistVal:={0,2}}); |
| f_EPTF_Var_adjustContent(v_remoteFloatlistSubscrIdx,{floatlistVal:={0.0,2.0}}); |
| f_EPTF_Var_adjustContent(v_remoteCharstringlistSubscrIdx,{charstringlistVal:={"0","2"}}); |
| f_EPTF_Var_adjustContent(v_remoteStatusLEDSubscrIdx,{statusLEDVal:={led_black,"2"}}); |
| |
| f_EPTF_Var_adjustContent(v_remoteIntSubscrIdxRef,{intVal:=3}); |
| f_EPTF_Var_adjustContent(v_remoteFloatSubscrIdxRef,{floatVal:=3.0}); |
| f_EPTF_Var_adjustContent(v_remoteBoolSubscrIdxRef,{boolVal:=true}); |
| f_EPTF_Var_adjustContent(v_remoteCharstringSubscrIdxRef,{charstringVal:="3.0"}); |
| f_EPTF_Var_adjustContent(v_remoteOctetstringSubscrIdxRef,{octetstringVal:='03'O}); |
| f_EPTF_Var_adjustContent(v_remoteHexstringSubscrIdxRef,{hexstringVal:='03'H}); |
| f_EPTF_Var_adjustContent(v_remoteBitstringSubscrIdxRef,{bitstringVal:='10'B}); |
| f_EPTF_Var_adjustContent(v_remoteIntegerlistSubscrIdxRef,{integerlistVal:={0,3}}); |
| f_EPTF_Var_adjustContent(v_remoteFloatlistSubscrIdxRef,{floatlistVal:={0.0,3.0}}); |
| f_EPTF_Var_adjustContent(v_remoteCharstringlistSubscrIdxRef,{charstringlistVal:={"0","3"}}); |
| f_EPTF_Var_adjustContent(v_remoteStatusLEDSubscrIdxRef,{statusLEDVal:={led_blue,"1"}}); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout {} |
| } |
| |
| //Send ready message to the first component |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_UnsubscribeTest_ProviderComponent(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT{ |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| //Create the provider variables |
| f_initVariables(); |
| |
| //Send ready message to the second component |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| //Waiting for sync |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| //Modify the values |
| f_EPTF_Var_setContent(v_intVarRefIdx,{intVal:=3}); |
| f_EPTF_Var_setContent(v_floatVarRefIdx,{floatVal:=3.0}); |
| f_EPTF_Var_setContent(v_boolVarRefIdx,{boolVal:=true}); |
| f_EPTF_Var_setContent(v_charstringVarRefIdx,{charstringVal:="3.0"}); |
| f_EPTF_Var_setContent(v_octetstringVarRefIdx,{octetstringVal:='03'O}); |
| f_EPTF_Var_setContent(v_hexstringVarRefIdx,{hexstringVal:='03'H}); |
| f_EPTF_Var_setContent(v_bitstringVarRefIdx,{bitstringVal:='10'B}); |
| f_EPTF_Var_setContent(v_integerlistVarRefIdx,{integerlistVal:={0,3}}); |
| f_EPTF_Var_setContent(v_floatlistVarRefIdx,{floatlistVal:={0.0,3.0}}); |
| f_EPTF_Var_setContent(v_charstringlistVarRefIdx,{charstringlistVal:={"0","3"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarRefIdx,{statusLEDVal:={led_blue,"1"}}); |
| |
| f_EPTF_Var_setContent(v_intVarIdx,{intVal:=4}); |
| f_EPTF_Var_setContent(v_floatVarIdx,{floatVal:=4.0}); |
| f_EPTF_Var_setContent(v_boolVarIdx,{boolVal:=false}); |
| f_EPTF_Var_setContent(v_charstringVarIdx,{charstringVal:="4.0"}); |
| f_EPTF_Var_setContent(v_octetstringVarIdx,{octetstringVal:='04'O}); |
| f_EPTF_Var_setContent(v_hexstringVarIdx,{hexstringVal:='04'H}); |
| f_EPTF_Var_setContent(v_bitstringVarIdx,{bitstringVal:='11'B}); |
| f_EPTF_Var_setContent(v_integerlistVarIdx,{integerlistVal:={0,4}}); |
| f_EPTF_Var_setContent(v_floatlistVarIdx,{floatlistVal:={0.0,4.0}}); |
| f_EPTF_Var_setContent(v_charstringlistVarIdx,{charstringlistVal:={"0","4"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarIdx,{statusLEDVal:={led_black,"2"}}); |
| |
| f_EPTF_Var_refreshContent(v_intVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatVarRefIdx); |
| f_EPTF_Var_refreshContent(v_boolVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_octetstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_integerlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarRefIdx); |
| |
| f_EPTF_Var_refreshContent(v_intVarIdx); |
| f_EPTF_Var_refreshContent(v_floatVarIdx); |
| f_EPTF_Var_refreshContent(v_boolVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarIdx); |
| f_EPTF_Var_refreshContent(v_octetstringVarIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarIdx); |
| f_EPTF_Var_refreshContent(v_integerlistVarIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarIdx); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO REFRESING -------"); |
| } |
| } |
| |
| //Send a ready message to the second component |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_UnsubscribeTest_SubscriberComponent(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT{ |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| //Waiting to the creation of the provider variables on the first component |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| //Subscribe to the variables on the provider component |
| f_subscribeVariables(pl_parents,realtime); |
| |
| //Unsubscribe from the variables on the first component |
| f_EPTF_Var_unsubscribe(v_remoteIntSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteFloatSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteBoolSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteCharstringSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteOctetstringSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteHexstringSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteBitstringSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteIntegerlistSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteFloatlistSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteCharstringlistSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteStatusLEDSubscrIdx); |
| |
| f_EPTF_Var_unsubscribe(v_remoteIntSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteFloatSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteBoolSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteCharstringSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteOctetstringSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteHexstringSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteBitstringSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteIntegerlistSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteFloatlistSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteCharstringlistSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteStatusLEDSubscrIdxRef); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout {} |
| } |
| |
| //Send a ready message to the first component |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| //Waiting to the modification of the local variables on the first component |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| var integer vl_intValue; |
| var float vl_floatValue; |
| var boolean vl_boolValue; |
| var charstring vl_charstringValue; |
| var octetstring vl_octetstringValue; |
| var hexstring vl_hexstringValue; |
| var bitstring vl_bitstringValue; |
| var EPTF_IntegerList vl_integerlistValue; |
| var EPTF_FloatList vl_floatlistValue; |
| var EPTF_CharstringList vl_charstringlistValue; |
| var EPTF_StatusLED vl_statusLEDValue; |
| |
| //Get and Check the values of the unsubscribed variables |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdx); |
| f_setverdictFail(vl_intValue!=1); |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdxRef); |
| f_setverdictFail(vl_intValue!=1); |
| |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdx); |
| f_setverdictFail(vl_floatValue!=1.0); |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdxRef); |
| f_setverdictFail(vl_floatValue!=1.0); |
| |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdx); |
| f_setverdictFail(vl_boolValue!=true); |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdxRef); |
| f_setverdictFail(vl_boolValue!=true); |
| |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdx); |
| f_setverdictFail(vl_charstringValue!="1.0"); |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdxRef); |
| f_setverdictFail(vl_charstringValue!="1.0"); |
| |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdx); |
| f_setverdictFail(vl_octetstringValue!='01'O); |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdxRef); |
| f_setverdictFail(vl_octetstringValue!='01'O); |
| |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdx); |
| f_setverdictFail(vl_hexstringValue!='01'H); |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdxRef); |
| f_setverdictFail(vl_hexstringValue!='01'H); |
| |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdx); |
| f_setverdictFail(vl_bitstringValue!='01'B); |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdxRef); |
| f_setverdictFail(vl_bitstringValue!='01'B); |
| |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdx); |
| f_setverdictFail(vl_integerlistValue!={0,1}); |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdxRef); |
| f_setverdictFail(vl_integerlistValue!={0,1}); |
| |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdx); |
| f_setverdictFail(vl_floatlistValue!={0.0,1.0}); |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdxRef); |
| f_setverdictFail(vl_floatlistValue!={0.0,1.0}); |
| |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdx); |
| f_setverdictFail(vl_charstringlistValue!={"0","1"}); |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdxRef); |
| f_setverdictFail(vl_charstringlistValue!={"0","1"}); |
| |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdx); |
| f_setverdictFail(vl_statusLEDValue!={led_blue,"1"}); |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdxRef); |
| f_setverdictFail(vl_statusLEDValue!={led_blue,"1"}); |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_GuardfunctionTest_ProviderComponent(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT{ |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| |
| //Create the provider variables |
| f_initVariables(); |
| |
| log("Add guard function to the variables"); |
| f_EPTF_Var_addGuardFn(v_intVarRefIdx,{refers(f_guard_Int),{}}); |
| f_EPTF_Var_addGuardFn(v_floatVarRefIdx,{refers(f_guard_Float),{}}); |
| f_EPTF_Var_addGuardFn(v_boolVarRefIdx,{refers(f_guard_Boolean),{}}); |
| f_EPTF_Var_addGuardFn(v_charstringVarRefIdx,{refers(f_guard_Charstring),{}}); |
| f_EPTF_Var_addGuardFn(v_octetstringVarRefIdx,{refers(f_guard_Octetstring),{}}); |
| f_EPTF_Var_addGuardFn(v_hexstringVarRefIdx,{refers(f_guard_Hexstring),{}}); |
| f_EPTF_Var_addGuardFn(v_bitstringVarRefIdx,{refers(f_guard_Bitstring),{}}); |
| f_EPTF_Var_addGuardFn(v_integerlistVarRefIdx,{refers(f_guard_Integerlist),{}}); |
| f_EPTF_Var_addGuardFn(v_floatlistVarRefIdx,{refers(f_guard_Floatlist),{}}); |
| f_EPTF_Var_addGuardFn(v_charstringlistVarRefIdx,{refers(f_guard_Charstringlist),{}}); |
| f_EPTF_Var_addGuardFn(v_statusLEDVarRefIdx,{refers(f_guard_StatusLED),{}}); |
| |
| f_EPTF_Var_addGuardFn(v_intVarIdx,{refers(f_guard_Int),{}}); |
| f_EPTF_Var_addGuardFn(v_floatVarIdx,{refers(f_guard_Float),{}}); |
| f_EPTF_Var_addGuardFn(v_boolVarIdx,{refers(f_guard_Boolean),{}}); |
| f_EPTF_Var_addGuardFn(v_charstringVarIdx,{refers(f_guard_Charstring),{}}); |
| f_EPTF_Var_addGuardFn(v_octetstringVarIdx,{refers(f_guard_Octetstring),{}}); |
| f_EPTF_Var_addGuardFn(v_hexstringVarIdx,{refers(f_guard_Hexstring),{}}); |
| f_EPTF_Var_addGuardFn(v_bitstringVarIdx,{refers(f_guard_Bitstring),{}}); |
| f_EPTF_Var_addGuardFn(v_integerlistVarIdx,{refers(f_guard_Integerlist),{}}); |
| f_EPTF_Var_addGuardFn(v_floatlistVarIdx,{refers(f_guard_Floatlist),{}}); |
| f_EPTF_Var_addGuardFn(v_charstringlistVarIdx,{refers(f_guard_Charstringlist),{}}); |
| f_EPTF_Var_addGuardFn(v_statusLEDVarIdx,{refers(f_guard_StatusLED),{}}); |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| var integer vl_intValue; |
| var float vl_floatValue; |
| var boolean vl_boolValue; |
| var charstring vl_charstringValue; |
| var octetstring vl_octetstringValue; |
| var hexstring vl_hexstringValue; |
| var bitstring vl_bitstringValue; |
| var EPTF_IntegerList vl_integerlistValue; |
| var EPTF_FloatList vl_floatlistValue; |
| var EPTF_CharstringList vl_charstringlistValue; |
| var EPTF_StatusLED vl_statusLEDValue; |
| |
| log("Get the modified values"); |
| vl_intValue := f_EPTF_Var_getIntValue(v_intVarRefIdx); |
| f_setverdictFail(vl_intValue!=1); |
| vl_intValue := f_EPTF_Var_getIntValue(v_intVarIdx); |
| f_setverdictFail(vl_intValue!=1); |
| |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_floatVarRefIdx); |
| f_setverdictFail(vl_floatValue!=1.0); |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_floatVarIdx); |
| f_setverdictFail(vl_floatValue!=1.0); |
| |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_boolVarRefIdx); |
| f_setverdictFail(vl_boolValue!=true); |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_boolVarIdx); |
| f_setverdictFail(vl_boolValue!=true); |
| |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_charstringVarRefIdx); |
| f_setverdictFail(vl_charstringValue!="1.0"); |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_charstringVarIdx); |
| f_setverdictFail(vl_charstringValue!="1.0"); |
| |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_octetstringVarRefIdx); |
| f_setverdictFail(vl_octetstringValue!='01'O); |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_octetstringVarIdx); |
| f_setverdictFail(vl_octetstringValue!='01'O); |
| |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_hexstringVarRefIdx); |
| f_setverdictFail(vl_hexstringValue!='01'H); |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_hexstringVarIdx); |
| f_setverdictFail(vl_hexstringValue!='01'H); |
| |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_bitstringVarRefIdx); |
| f_setverdictFail(vl_bitstringValue!='01'B); |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_bitstringVarIdx); |
| f_setverdictFail(vl_bitstringValue!='01'B); |
| |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_integerlistVarRefIdx); |
| f_setverdictFail(vl_integerlistValue!={0,1}); |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_integerlistVarIdx); |
| f_setverdictFail(vl_integerlistValue!={0,1}); |
| |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_floatlistVarRefIdx); |
| f_setverdictFail(vl_floatlistValue!={0.0,1.0}); |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_floatlistVarIdx); |
| f_setverdictFail(vl_floatlistValue!={0.0,1.0}); |
| |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_charstringlistVarRefIdx); |
| f_setverdictFail(vl_charstringlistValue!={"0","1"}); |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_charstringlistVarIdx); |
| f_setverdictFail(vl_charstringlistValue!={"0","1"}); |
| |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_statusLEDVarRefIdx); |
| f_setverdictFail(vl_statusLEDValue!={led_blue,"1"}); |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_statusLEDVarIdx); |
| f_setverdictFail(vl_statusLEDValue!={led_blue,"1"}); |
| |
| log("Remove the guard functions"); |
| f_EPTF_Var_removeGuardFn(v_intVarRefIdx,{refers(f_guard_Int),{}}); |
| f_EPTF_Var_removeGuardFn(v_floatVarRefIdx,{refers(f_guard_Float),{}}); |
| f_EPTF_Var_removeGuardFn(v_boolVarRefIdx,{refers(f_guard_Boolean),{}}); |
| f_EPTF_Var_removeGuardFn(v_charstringVarRefIdx,{refers(f_guard_Charstring),{}}); |
| f_EPTF_Var_removeGuardFn(v_octetstringVarRefIdx,{refers(f_guard_Octetstring),{}}); |
| f_EPTF_Var_removeGuardFn(v_hexstringVarRefIdx,{refers(f_guard_Hexstring),{}}); |
| f_EPTF_Var_removeGuardFn(v_bitstringVarRefIdx,{refers(f_guard_Bitstring),{}}); |
| f_EPTF_Var_removeGuardFn(v_integerlistVarRefIdx,{refers(f_guard_Integerlist),{}}); |
| f_EPTF_Var_removeGuardFn(v_floatlistVarRefIdx,{refers(f_guard_Floatlist),{}}); |
| f_EPTF_Var_removeGuardFn(v_charstringlistVarRefIdx,{refers(f_guard_Charstringlist),{}}); |
| f_EPTF_Var_removeGuardFn(v_statusLEDVarRefIdx,{refers(f_guard_StatusLED),{}}); |
| |
| f_EPTF_Var_removeGuardFn(v_intVarIdx,{refers(f_guard_Int),{}}); |
| f_EPTF_Var_removeGuardFn(v_floatVarIdx,{refers(f_guard_Float),{}}); |
| f_EPTF_Var_removeGuardFn(v_boolVarIdx,{refers(f_guard_Boolean),{}}); |
| f_EPTF_Var_removeGuardFn(v_charstringVarIdx,{refers(f_guard_Charstring),{}}); |
| f_EPTF_Var_removeGuardFn(v_octetstringVarIdx,{refers(f_guard_Octetstring),{}}); |
| f_EPTF_Var_removeGuardFn(v_hexstringVarIdx,{refers(f_guard_Hexstring),{}}); |
| f_EPTF_Var_removeGuardFn(v_bitstringVarIdx,{refers(f_guard_Bitstring),{}}); |
| f_EPTF_Var_removeGuardFn(v_integerlistVarIdx,{refers(f_guard_Integerlist),{}}); |
| f_EPTF_Var_removeGuardFn(v_floatlistVarIdx,{refers(f_guard_Floatlist),{}}); |
| f_EPTF_Var_removeGuardFn(v_charstringlistVarIdx,{refers(f_guard_Charstringlist),{}}); |
| f_EPTF_Var_removeGuardFn(v_statusLEDVarIdx,{refers(f_guard_StatusLED),{}}); |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| log("Get the modified values"); |
| vl_intValue := f_EPTF_Var_getIntValue(v_intVarRefIdx); |
| f_setverdictFail(vl_intValue!=2); |
| vl_intValue := f_EPTF_Var_getIntValue(v_intVarIdx); |
| f_setverdictFail(vl_intValue!=3); |
| |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_floatVarRefIdx); |
| f_setverdictFail(vl_floatValue!=2.0); |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_floatVarIdx); |
| f_setverdictFail(vl_floatValue!=3.0); |
| |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_boolVarRefIdx); |
| f_setverdictFail(vl_boolValue!=false); |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_boolVarIdx); |
| f_setverdictFail(vl_boolValue!=false); |
| |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_charstringVarRefIdx); |
| f_setverdictFail(vl_charstringValue!="2.0"); |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_charstringVarIdx); |
| f_setverdictFail(vl_charstringValue!="3.0"); |
| |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_octetstringVarRefIdx); |
| f_setverdictFail(vl_octetstringValue!='02'O); |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_octetstringVarIdx); |
| f_setverdictFail(vl_octetstringValue!='03'O); |
| |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_hexstringVarRefIdx); |
| f_setverdictFail(vl_hexstringValue!='02'H); |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_hexstringVarIdx); |
| f_setverdictFail(vl_hexstringValue!='03'H); |
| |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_bitstringVarRefIdx); |
| f_setverdictFail(vl_bitstringValue!='11'B); |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_bitstringVarIdx); |
| f_setverdictFail(vl_bitstringValue!='111'B); |
| |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_integerlistVarRefIdx); |
| f_setverdictFail(vl_integerlistValue!={0,2}); |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_integerlistVarIdx); |
| f_setverdictFail(vl_integerlistValue!={0,3}); |
| |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_floatlistVarRefIdx); |
| f_setverdictFail(vl_floatlistValue!={0.0,2.0}); |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_floatlistVarIdx); |
| f_setverdictFail(vl_floatlistValue!={0.0,3.0}); |
| |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_charstringlistVarRefIdx); |
| f_setverdictFail(vl_charstringlistValue!={"0","2"}); |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_charstringlistVarIdx); |
| f_setverdictFail(vl_charstringlistValue!={"0","3"}); |
| |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_statusLEDVarRefIdx); |
| f_setverdictFail(vl_statusLEDValue!={led_black,"2"}); |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_statusLEDVarIdx); |
| f_setverdictFail(vl_statusLEDValue!={led_black,"2"}); |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_GuardfunctionTest_SubscriberComponent(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT{ |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| //Subscribe to the variables on the provider component |
| f_subscribeVariables(pl_parents,realtime); |
| |
| log("Modify the values"); |
| f_EPTF_Var_adjustContent(v_remoteIntSubscrIdx,{intVal:=2}); |
| f_EPTF_Var_adjustContent(v_remoteFloatSubscrIdx,{floatVal:=2.0}); |
| f_EPTF_Var_adjustContent(v_remoteBoolSubscrIdx,{boolVal:=false}); |
| f_EPTF_Var_adjustContent(v_remoteCharstringSubscrIdx,{charstringVal:="2.0"}); |
| f_EPTF_Var_adjustContent(v_remoteOctetstringSubscrIdx,{octetstringVal:='02'O}); |
| f_EPTF_Var_adjustContent(v_remoteHexstringSubscrIdx,{hexstringVal:='02'H}); |
| f_EPTF_Var_adjustContent(v_remoteBitstringSubscrIdx,{bitstringVal:='11'B}); |
| f_EPTF_Var_adjustContent(v_remoteIntegerlistSubscrIdx,{integerlistVal:={0,2}}); |
| f_EPTF_Var_adjustContent(v_remoteFloatlistSubscrIdx,{floatlistVal:={0.0,2.0}}); |
| f_EPTF_Var_adjustContent(v_remoteCharstringlistSubscrIdx,{charstringlistVal:={"0","2"}}); |
| f_EPTF_Var_adjustContent(v_remoteStatusLEDSubscrIdx,{statusLEDVal:={led_black,"2"}}); |
| |
| f_EPTF_Var_adjustContent(v_remoteIntSubscrIdxRef,{intVal:=3}); |
| f_EPTF_Var_adjustContent(v_remoteFloatSubscrIdxRef,{floatVal:=3.0}); |
| f_EPTF_Var_adjustContent(v_remoteBoolSubscrIdxRef,{boolVal:=false}); |
| f_EPTF_Var_adjustContent(v_remoteCharstringSubscrIdxRef,{charstringVal:="3.0"}); |
| f_EPTF_Var_adjustContent(v_remoteOctetstringSubscrIdxRef,{octetstringVal:='03'O}); |
| f_EPTF_Var_adjustContent(v_remoteHexstringSubscrIdxRef,{hexstringVal:='03'H}); |
| f_EPTF_Var_adjustContent(v_remoteBitstringSubscrIdxRef,{bitstringVal:='111'B}); |
| f_EPTF_Var_adjustContent(v_remoteIntegerlistSubscrIdxRef,{integerlistVal:={0,3}}); |
| f_EPTF_Var_adjustContent(v_remoteFloatlistSubscrIdxRef,{floatlistVal:={0.0,3.0}}); |
| f_EPTF_Var_adjustContent(v_remoteCharstringlistSubscrIdxRef,{charstringlistVal:={"0","3"}}); |
| f_EPTF_Var_adjustContent(v_remoteStatusLEDSubscrIdxRef,{statusLEDVal:={led_blue,"1"}}); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| var integer vl_intValue; |
| var float vl_floatValue; |
| var boolean vl_boolValue; |
| var charstring vl_charstringValue; |
| var octetstring vl_octetstringValue; |
| var hexstring vl_hexstringValue; |
| var bitstring vl_bitstringValue; |
| var EPTF_IntegerList vl_integerlistValue; |
| var EPTF_FloatList vl_floatlistValue; |
| var EPTF_CharstringList vl_charstringlistValue; |
| var EPTF_StatusLED vl_statusLEDValue; |
| |
| //Get and Check the values of the unsubscribed variables |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdx); |
| f_setverdictFail(vl_intValue!=1); |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdxRef); |
| f_setverdictFail(vl_intValue!=1); |
| |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdx); |
| f_setverdictFail(vl_floatValue!=1.0); |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdxRef); |
| f_setverdictFail(vl_floatValue!=1.0); |
| |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdx); |
| f_setverdictFail(vl_boolValue!=true); |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdxRef); |
| f_setverdictFail(vl_boolValue!=true); |
| |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdx); |
| f_setverdictFail(vl_charstringValue!="1.0"); |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdxRef); |
| f_setverdictFail(vl_charstringValue!="1.0"); |
| |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdx); |
| f_setverdictFail(vl_octetstringValue!='01'O); |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdxRef); |
| f_setverdictFail(vl_octetstringValue!='01'O); |
| |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdx); |
| f_setverdictFail(vl_hexstringValue!='01'H); |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdxRef); |
| f_setverdictFail(vl_hexstringValue!='01'H); |
| |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdx); |
| f_setverdictFail(vl_bitstringValue!='01'B); |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdxRef); |
| f_setverdictFail(vl_bitstringValue!='01'B); |
| |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdx); |
| f_setverdictFail(vl_integerlistValue!={0,1}); |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdxRef); |
| f_setverdictFail(vl_integerlistValue!={0,1}); |
| |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdx); |
| f_setverdictFail(vl_floatlistValue!={0.0,1.0}); |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdxRef); |
| f_setverdictFail(vl_floatlistValue!={0.0,1.0}); |
| |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdx); |
| f_setverdictFail(vl_charstringlistValue!={"0","1"}); |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdxRef); |
| f_setverdictFail(vl_charstringlistValue!={"0","1"}); |
| |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdx); |
| f_setverdictFail(vl_statusLEDValue!={led_blue,"1"}); |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdxRef); |
| f_setverdictFail(vl_statusLEDValue!={led_blue,"1"}); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| log("Adjust the variables"); |
| f_EPTF_Var_adjustContent(v_remoteIntSubscrIdx,{intVal:=2}); |
| f_EPTF_Var_adjustContent(v_remoteFloatSubscrIdx,{floatVal:=2.0}); |
| f_EPTF_Var_adjustContent(v_remoteBoolSubscrIdx,{boolVal:=false}); |
| f_EPTF_Var_adjustContent(v_remoteCharstringSubscrIdx,{charstringVal:="2.0"}); |
| f_EPTF_Var_adjustContent(v_remoteOctetstringSubscrIdx,{octetstringVal:='02'O}); |
| f_EPTF_Var_adjustContent(v_remoteHexstringSubscrIdx,{hexstringVal:='02'H}); |
| f_EPTF_Var_adjustContent(v_remoteBitstringSubscrIdx,{bitstringVal:='11'B}); |
| f_EPTF_Var_adjustContent(v_remoteIntegerlistSubscrIdx,{integerlistVal:={0,2}}); |
| f_EPTF_Var_adjustContent(v_remoteFloatlistSubscrIdx,{floatlistVal:={0.0,2.0}}); |
| f_EPTF_Var_adjustContent(v_remoteCharstringlistSubscrIdx,{charstringlistVal:={"0","2"}}); |
| f_EPTF_Var_adjustContent(v_remoteStatusLEDSubscrIdx,{statusLEDVal:={led_black,"2"}}); |
| |
| f_EPTF_Var_adjustContent(v_remoteIntSubscrIdxRef,{intVal:=3}); |
| f_EPTF_Var_adjustContent(v_remoteFloatSubscrIdxRef,{floatVal:=3.0}); |
| f_EPTF_Var_adjustContent(v_remoteBoolSubscrIdxRef,{boolVal:=false}); |
| f_EPTF_Var_adjustContent(v_remoteCharstringSubscrIdxRef,{charstringVal:="3.0"}); |
| f_EPTF_Var_adjustContent(v_remoteOctetstringSubscrIdxRef,{octetstringVal:='03'O}); |
| f_EPTF_Var_adjustContent(v_remoteHexstringSubscrIdxRef,{hexstringVal:='03'H}); |
| f_EPTF_Var_adjustContent(v_remoteBitstringSubscrIdxRef,{bitstringVal:='111'B}); |
| f_EPTF_Var_adjustContent(v_remoteIntegerlistSubscrIdxRef,{integerlistVal:={0,3}}); |
| f_EPTF_Var_adjustContent(v_remoteFloatlistSubscrIdxRef,{floatlistVal:={0.0,3.0}}); |
| f_EPTF_Var_adjustContent(v_remoteCharstringlistSubscrIdxRef,{charstringlistVal:={"0","3"}}); |
| f_EPTF_Var_adjustContent(v_remoteStatusLEDSubscrIdxRef,{statusLEDVal:={led_black,"2"}}); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| //Get and Check the values of the unsubscribed variables |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdx); |
| f_setverdictFail(vl_intValue!=2); |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdxRef); |
| f_setverdictFail(vl_intValue!=3); |
| |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdx); |
| f_setverdictFail(vl_floatValue!=2.0); |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdxRef); |
| f_setverdictFail(vl_floatValue!=3.0); |
| |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdx); |
| f_setverdictFail(vl_boolValue!=false); |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdxRef); |
| f_setverdictFail(vl_boolValue!=false); |
| |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdx); |
| f_setverdictFail(vl_charstringValue!="2.0"); |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdxRef); |
| f_setverdictFail(vl_charstringValue!="3.0"); |
| |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdx); |
| f_setverdictFail(vl_octetstringValue!='02'O); |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdxRef); |
| f_setverdictFail(vl_octetstringValue!='03'O); |
| |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdx); |
| f_setverdictFail(vl_hexstringValue!='02'H); |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdxRef); |
| f_setverdictFail(vl_hexstringValue!='03'H); |
| |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdx); |
| f_setverdictFail(vl_bitstringValue!='11'B); |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdxRef); |
| f_setverdictFail(vl_bitstringValue!='111'B); |
| |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdx); |
| f_setverdictFail(vl_integerlistValue!={0,2}); |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdxRef); |
| f_setverdictFail(vl_integerlistValue!={0,3}); |
| |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdx); |
| f_setverdictFail(vl_floatlistValue!={0.0,2.0}); |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdxRef); |
| f_setverdictFail(vl_floatlistValue!={0.0,3.0}); |
| |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdx); |
| f_setverdictFail(vl_charstringlistValue!={"0","2"}); |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdxRef); |
| f_setverdictFail(vl_charstringlistValue!={"0","3"}); |
| |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdx); |
| f_setverdictFail(vl_statusLEDValue!={led_black,"2"}); |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdxRef); |
| f_setverdictFail(vl_statusLEDValue!={led_black,"2"}); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_CalculationfunctionTest_ProviderComponent(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT{ |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| //Create the provider variables |
| f_initVariables(); |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_CalculationfunctionTest_SubscriberComponent(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT{ |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| //Subscribe to the variables on the provider component |
| f_subscribeVariables(pl_parents,realtime); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| var integer v_intValue := 1; |
| var float v_floatValue := 1.0; |
| var boolean v_boolValue := true; |
| var charstring v_charstringValue := "1.0"; |
| var octetstring v_octetstringValue := '01'O; |
| var hexstring v_hexstringValue := '01'H; |
| var bitstring v_bitstringValue := '01'B; |
| var EPTF_IntegerList v_integerlistValue := {0,1}; |
| var EPTF_FloatList v_floatlistValue := {0.0,1.0}; |
| var EPTF_CharstringList v_charstringlistValue := {"0","1"}; |
| var EPTF_StatusLED v_statusLEDValue := {led_blue,"1"}; |
| |
| f_EPTF_Var_newInt("intVar",0, v_intVarIdx); |
| f_EPTF_Var_newIntRef("intVarRef",v_intValue,v_intVarRefIdx); |
| var EPTF_Var_ProviderLocal vl_providerLocalInt := {calcFn:={ |
| funcRef := refers(f_calculationInt), |
| argList := {v_remoteIntSubscrIdx}, |
| nonVarArgList := {} |
| }}; |
| |
| var EPTF_Var_ProviderLocal vl_providerLocalIntRef := {calcFn:={ |
| funcRef := refers(f_calculationInt), |
| argList := {v_remoteIntSubscrIdxRef}, |
| nonVarArgList := {} |
| }}; |
| f_EPTF_Var_subscribeLocal(v_intVarRefIdx,vl_providerLocalInt); |
| f_setverdictFail((f_EPTF_Var_getIntValue(v_intVarRefIdx)!=2)); |
| f_EPTF_Var_subscribeLocal(v_intVarIdx,vl_providerLocalIntRef); |
| f_setverdictFail((f_EPTF_Var_getIntValue(v_intVarIdx)!=2)); |
| |
| f_EPTF_Var_newFloat("floatVar", 0.0, v_floatVarIdx); |
| f_EPTF_Var_newFloatRef("floatVarRef",v_floatValue,v_floatVarRefIdx); |
| var EPTF_Var_ProviderLocal vl_providerLocalFloat := {calcFn:={ |
| funcRef := refers(f_calculationFloat), |
| argList := {v_remoteFloatSubscrIdx}, |
| nonVarArgList := {} |
| }}; |
| var EPTF_Var_ProviderLocal vl_providerLocalFloatRef := {calcFn:={ |
| funcRef := refers(f_calculationFloat), |
| argList := {v_remoteFloatSubscrIdxRef}, |
| nonVarArgList := {} |
| }}; |
| f_EPTF_Var_subscribeLocal(v_floatVarRefIdx,vl_providerLocalFloat); |
| f_setverdictFail((f_EPTF_Var_getFloatValue(v_floatVarRefIdx)!=2.0)); |
| log("----- FLOATREF ERROR -------",f_EPTF_Var_getFloatValue(v_floatVarRefIdx)); |
| f_EPTF_Var_subscribeLocal(v_floatVarIdx,vl_providerLocalFloatRef); |
| f_setverdictFail((f_EPTF_Var_getFloatValue(v_floatVarIdx)!=2.0)) |
| log("----- FLOAT ERROR -------",f_EPTF_Var_getFloatValue(v_floatVarIdx)); |
| |
| f_EPTF_Var_newBool("boolVar", false, v_boolVarIdx); |
| f_EPTF_Var_newBoolRef("boolVarRef", v_boolValue,v_boolVarRefIdx); |
| var EPTF_Var_ProviderLocal vl_providerLocalBool := {calcFn:={ |
| funcRef := refers(f_calculationBoolean), |
| argList := {v_remoteBoolSubscrIdx}, |
| nonVarArgList := {} |
| }}; |
| var EPTF_Var_ProviderLocal vl_providerLocalBoolRef := {calcFn:={ |
| funcRef := refers(f_calculationBoolean), |
| argList := {v_remoteBoolSubscrIdxRef}, |
| nonVarArgList := {} |
| }}; |
| f_EPTF_Var_subscribeLocal(v_boolVarRefIdx,vl_providerLocalBool); |
| f_setverdictFail((f_EPTF_Var_getBoolValue(v_boolVarRefIdx)!=false)); |
| f_EPTF_Var_subscribeLocal(v_boolVarIdx,vl_providerLocalBoolRef); |
| f_setverdictFail((f_EPTF_Var_getBoolValue(v_boolVarIdx)!=false)); |
| |
| f_EPTF_Var_newCharstring("charstringVar", "0.0", v_charstringVarIdx); |
| f_EPTF_Var_newCharstringRef("charstringVarRef", v_charstringValue,v_charstringVarRefIdx); |
| var EPTF_Var_ProviderLocal vl_providerLocalCharstring := {calcFn:={ |
| funcRef := refers(f_calculationCharstring), |
| argList := {v_remoteCharstringSubscrIdx}, |
| nonVarArgList := {} |
| }}; |
| var EPTF_Var_ProviderLocal vl_providerLocalCharstringRef := {calcFn:={ |
| funcRef := refers(f_calculationCharstring), |
| argList := {v_remoteCharstringSubscrIdxRef}, |
| nonVarArgList := {} |
| }}; |
| f_EPTF_Var_subscribeLocal(v_charstringVarRefIdx,vl_providerLocalCharstring); |
| f_setverdictFail((f_EPTF_Var_getCharstringValue(v_charstringVarRefIdx)!="1.01.0")); |
| f_EPTF_Var_subscribeLocal(v_charstringVarIdx,vl_providerLocalCharstringRef); |
| f_setverdictFail((f_EPTF_Var_getCharstringValue(v_charstringVarIdx)!="1.01.0")); |
| |
| f_EPTF_Var_newOctetstring("octetstringVar", '00'O, v_octetstringVarIdx); |
| f_EPTF_Var_newOctetstringRef("octetstringVarRef", v_octetstringValue,v_octetstringVarRefIdx); |
| var EPTF_Var_ProviderLocal vl_providerLocalOctetstring := {calcFn:={ |
| funcRef := refers(f_calculationOctetstring), |
| argList := {v_remoteOctetstringSubscrIdx}, |
| nonVarArgList := {} |
| }}; |
| var EPTF_Var_ProviderLocal vl_providerLocalOctetstringRef := {calcFn:={ |
| funcRef := refers(f_calculationOctetstring), |
| argList := {v_remoteOctetstringSubscrIdxRef}, |
| nonVarArgList := {} |
| }}; |
| |
| f_EPTF_Var_subscribeLocal(v_octetstringVarRefIdx,vl_providerLocalOctetstring); |
| f_setverdictFail((f_EPTF_Var_getOctetstringValue(v_octetstringVarRefIdx)!='0101'O)); |
| f_EPTF_Var_subscribeLocal(v_octetstringVarIdx,vl_providerLocalOctetstringRef); |
| f_setverdictFail((f_EPTF_Var_getOctetstringValue(v_octetstringVarIdx)!='0101'O)); |
| |
| f_EPTF_Var_newHexstring("hexstringVar", '00'H, v_hexstringVarIdx); |
| f_EPTF_Var_newHexstringRef("hexstringVarRef", v_hexstringValue,v_hexstringVarRefIdx); |
| var EPTF_Var_ProviderLocal vl_providerLocalHexstring := {calcFn:={ |
| funcRef := refers(f_calculationHexstring), |
| argList := {v_remoteHexstringSubscrIdx}, |
| nonVarArgList := {} |
| }}; |
| var EPTF_Var_ProviderLocal vl_providerLocalHexstringRef := {calcFn:={ |
| funcRef := refers(f_calculationHexstring), |
| argList := {v_remoteHexstringSubscrIdxRef}, |
| nonVarArgList := {} |
| }}; |
| f_EPTF_Var_subscribeLocal(v_hexstringVarRefIdx,vl_providerLocalHexstring); |
| f_setverdictFail((f_EPTF_Var_getHexstringValue(v_hexstringVarRefIdx)!='0101'H)); |
| f_EPTF_Var_subscribeLocal(v_hexstringVarIdx,vl_providerLocalHexstringRef); |
| f_setverdictFail((f_EPTF_Var_getHexstringValue(v_hexstringVarIdx)!='0101'H)); |
| |
| f_EPTF_Var_newBitstring("bitstringVar", '00'B, v_bitstringVarIdx); |
| f_EPTF_Var_newBitstringRef("bitstringVarRef", v_bitstringValue,v_bitstringVarRefIdx); |
| var EPTF_Var_ProviderLocal vl_providerLocalBitstring := {calcFn:={ |
| funcRef := refers(f_calculationBitstring), |
| argList := {v_remoteBitstringSubscrIdx}, |
| nonVarArgList := {} |
| }}; |
| var EPTF_Var_ProviderLocal vl_providerLocalBitstringRef := {calcFn:={ |
| funcRef := refers(f_calculationBitstring), |
| argList := {v_remoteBitstringSubscrIdxRef}, |
| nonVarArgList := {} |
| }}; |
| f_EPTF_Var_subscribeLocal(v_bitstringVarRefIdx,vl_providerLocalBitstring); |
| f_setverdictFail((f_EPTF_Var_getBitstringValue(v_bitstringVarRefIdx)!='0101'B)); |
| f_EPTF_Var_subscribeLocal(v_bitstringVarIdx,vl_providerLocalBitstringRef); |
| f_setverdictFail((f_EPTF_Var_getBitstringValue(v_bitstringVarIdx)!='0101'B)); |
| |
| f_EPTF_Var_newIntegerlist("integerlistVar", {0,2}, v_integerlistVarIdx); |
| f_EPTF_Var_newIntegerlistRef("integerlistVarRef", v_integerlistValue,v_integerlistVarRefIdx); |
| var EPTF_Var_ProviderLocal vl_providerLocalIntegerlist := {calcFn:={ |
| funcRef := refers(f_calculationIntegerlist), |
| argList := {v_remoteIntegerlistSubscrIdx}, |
| nonVarArgList := {} |
| }}; |
| var EPTF_Var_ProviderLocal vl_providerLocalIntegerlistRef := {calcFn:={ |
| funcRef := refers(f_calculationIntegerlist), |
| argList := {v_remoteIntegerlistSubscrIdxRef}, |
| nonVarArgList := {} |
| }}; |
| f_EPTF_Var_subscribeLocal(v_integerlistVarRefIdx,vl_providerLocalIntegerlist); |
| f_setverdictFail((f_EPTF_Var_getIntegerlistValue(v_integerlistVarRefIdx)!={0,1})); |
| f_EPTF_Var_subscribeLocal(v_integerlistVarIdx,vl_providerLocalIntegerlistRef); |
| f_setverdictFail((f_EPTF_Var_getIntegerlistValue(v_integerlistVarIdx)!={0,1})); |
| |
| f_EPTF_Var_newFloatlist("floatlistVar", {0.0,2.0}, v_floatlistVarIdx); |
| f_EPTF_Var_newFloatlistRef("FloatlistVarRef", v_floatlistValue,v_floatlistVarRefIdx); |
| var EPTF_Var_ProviderLocal vl_providerLocalFloatlist := {calcFn:={ |
| funcRef := refers(f_calculationFloatlist), |
| argList := {v_remoteFloatlistSubscrIdx}, |
| nonVarArgList := {} |
| }}; |
| var EPTF_Var_ProviderLocal vl_providerLocalFloatlistRef := {calcFn:={ |
| funcRef := refers(f_calculationFloatlist), |
| argList := {v_remoteFloatlistSubscrIdxRef}, |
| nonVarArgList := {} |
| }}; |
| f_EPTF_Var_subscribeLocal(v_floatlistVarRefIdx,vl_providerLocalFloatlist); |
| f_setverdictFail((f_EPTF_Var_getFloatlistValue(v_floatlistVarRefIdx)!={0.0,1.0})); |
| f_EPTF_Var_subscribeLocal(v_floatlistVarIdx,vl_providerLocalFloatlistRef); |
| f_setverdictFail((f_EPTF_Var_getFloatlistValue(v_floatlistVarIdx)!={0.0,1.0})); |
| |
| f_EPTF_Var_newCharstringlist("charstringlistVar", {"0","2"}, v_charstringlistVarIdx); |
| f_EPTF_Var_newCharstringlistRef("charstringlistVarRef", v_charstringlistValue,v_charstringlistVarRefIdx); |
| var EPTF_Var_ProviderLocal vl_providerLocalCharstringlist := {calcFn:={ |
| funcRef := refers(f_calculationCharstringlist), |
| argList := {v_remoteCharstringlistSubscrIdx}, |
| nonVarArgList := {} |
| }}; |
| var EPTF_Var_ProviderLocal vl_providerLocalCharstringlistRef := {calcFn:={ |
| funcRef := refers(f_calculationCharstringlist), |
| argList := {v_remoteCharstringlistSubscrIdxRef}, |
| nonVarArgList := {} |
| }}; |
| f_EPTF_Var_subscribeLocal(v_charstringlistVarRefIdx,vl_providerLocalCharstringlist); |
| f_setverdictFail((f_EPTF_Var_getCharstringlistValue(v_charstringlistVarRefIdx)!={"0","1"})); |
| f_EPTF_Var_subscribeLocal(v_charstringlistVarIdx,vl_providerLocalCharstringlistRef); |
| f_setverdictFail((f_EPTF_Var_getCharstringlistValue(v_charstringlistVarIdx)!={"0","1"})); |
| |
| f_EPTF_Var_newStatusLED("statusLEDVar", {led_black,"2"}, v_statusLEDVarIdx); |
| f_EPTF_Var_newStatusLEDRef("statusLEDVarRef", v_statusLEDValue,v_statusLEDVarRefIdx); |
| var EPTF_Var_ProviderLocal vl_providerLocalStatusLED := {calcFn:={ |
| funcRef := refers(f_calculationStatusLED), |
| argList := {v_remoteStatusLEDSubscrIdx}, |
| nonVarArgList := {} |
| }}; |
| var EPTF_Var_ProviderLocal vl_providerLocalStatusLEDRef := {calcFn:={ |
| funcRef := refers(f_calculationStatusLED), |
| argList := {v_remoteStatusLEDSubscrIdxRef}, |
| nonVarArgList := {} |
| }}; |
| f_EPTF_Var_subscribeLocal(v_statusLEDVarRefIdx,vl_providerLocalStatusLED); |
| f_setverdictFail((f_EPTF_Var_getStatusLEDValue(v_statusLEDVarRefIdx)!={led_blue,"1"})); |
| f_EPTF_Var_subscribeLocal(v_statusLEDVarIdx,vl_providerLocalStatusLEDRef); |
| f_setverdictFail((f_EPTF_Var_getStatusLEDValue(v_statusLEDVarIdx)!={led_blue,"1"})); |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| |
| function f_EPTF_Var_PostprocfunctionTest_ProviderComponent(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT{ |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| |
| |
| //Create the provider variables |
| f_initVariables(); |
| |
| f_EPTF_Var_addPostProcFn(v_intVarRefIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_addPostProcFn(v_floatVarRefIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_addPostProcFn(v_boolVarRefIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_addPostProcFn(v_charstringVarRefIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_addPostProcFn(v_octetstringVarRefIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_addPostProcFn(v_hexstringVarRefIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_addPostProcFn(v_bitstringVarRefIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_addPostProcFn(v_integerlistVarRefIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_addPostProcFn(v_floatlistVarRefIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_addPostProcFn(v_charstringlistVarRefIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_addPostProcFn(v_statusLEDVarRefIdx, {refers(f_postProc_incrementValue),{}}); |
| |
| f_EPTF_Var_addPostProcFn(v_intVarIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_addPostProcFn(v_floatVarIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_addPostProcFn(v_boolVarIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_addPostProcFn(v_charstringVarIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_addPostProcFn(v_octetstringVarIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_addPostProcFn(v_hexstringVarIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_addPostProcFn(v_bitstringVarIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_addPostProcFn(v_integerlistVarIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_addPostProcFn(v_floatlistVarIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_addPostProcFn(v_charstringlistVarIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_addPostProcFn(v_statusLEDVarIdx, {refers(f_postProc_incrementValue),{}}); |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| if (v_inc != 22) {setverdict(fail)} |
| |
| f_EPTF_Var_removePostProcFn(v_intVarRefIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_removePostProcFn(v_floatVarRefIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_removePostProcFn(v_boolVarRefIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_removePostProcFn(v_charstringVarRefIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_removePostProcFn(v_octetstringVarRefIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_removePostProcFn(v_hexstringVarRefIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_removePostProcFn(v_bitstringVarRefIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_removePostProcFn(v_integerlistVarRefIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_removePostProcFn(v_floatlistVarRefIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_removePostProcFn(v_charstringlistVarRefIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_removePostProcFn(v_statusLEDVarRefIdx, {refers(f_postProc_incrementValue),{}}); |
| |
| f_EPTF_Var_removePostProcFn(v_intVarIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_removePostProcFn(v_floatVarIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_removePostProcFn(v_boolVarIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_removePostProcFn(v_charstringVarIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_removePostProcFn(v_octetstringVarIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_removePostProcFn(v_hexstringVarIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_removePostProcFn(v_bitstringVarIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_removePostProcFn(v_integerlistVarIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_removePostProcFn(v_floatlistVarIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_removePostProcFn(v_charstringlistVarIdx, {refers(f_postProc_incrementValue),{}}); |
| f_EPTF_Var_removePostProcFn(v_statusLEDVarIdx, {refers(f_postProc_incrementValue),{}}); |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| if (v_inc != 22) {setverdict(fail)} |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_PostprocfunctionTest_SubscriberComponent(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT{ |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| //Subscribe to the variables on the provider component |
| f_subscribeVariables(pl_parents,realtime); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| log("Modify the values"); |
| f_EPTF_Var_adjustContent(v_remoteIntSubscrIdx,{intVal:=2}); |
| f_EPTF_Var_adjustContent(v_remoteFloatSubscrIdx,{floatVal:=2.0}); |
| f_EPTF_Var_adjustContent(v_remoteBoolSubscrIdx,{boolVal:=false}); |
| f_EPTF_Var_adjustContent(v_remoteCharstringSubscrIdx,{charstringVal:="2.0"}); |
| f_EPTF_Var_adjustContent(v_remoteOctetstringSubscrIdx,{octetstringVal:='02'O}); |
| f_EPTF_Var_adjustContent(v_remoteHexstringSubscrIdx,{hexstringVal:='02'H}); |
| f_EPTF_Var_adjustContent(v_remoteBitstringSubscrIdx,{bitstringVal:='11'B}); |
| f_EPTF_Var_adjustContent(v_remoteIntegerlistSubscrIdx,{integerlistVal:={0,2}}); |
| f_EPTF_Var_adjustContent(v_remoteFloatlistSubscrIdx,{floatlistVal:={0.0,2.0}}); |
| f_EPTF_Var_adjustContent(v_remoteCharstringlistSubscrIdx,{charstringlistVal:={"0","2"}}); |
| f_EPTF_Var_adjustContent(v_remoteStatusLEDSubscrIdx,{statusLEDVal:={led_black,"2"}}); |
| |
| f_EPTF_Var_adjustContent(v_remoteIntSubscrIdxRef,{intVal:=2}); |
| f_EPTF_Var_adjustContent(v_remoteFloatSubscrIdxRef,{floatVal:=2.0}); |
| f_EPTF_Var_adjustContent(v_remoteBoolSubscrIdxRef,{boolVal:=false}); |
| f_EPTF_Var_adjustContent(v_remoteCharstringSubscrIdxRef,{charstringVal:="2.0"}); |
| f_EPTF_Var_adjustContent(v_remoteOctetstringSubscrIdxRef,{octetstringVal:='02'O}); |
| f_EPTF_Var_adjustContent(v_remoteHexstringSubscrIdxRef,{hexstringVal:='02'H}); |
| f_EPTF_Var_adjustContent(v_remoteBitstringSubscrIdxRef,{bitstringVal:='11'B}); |
| f_EPTF_Var_adjustContent(v_remoteIntegerlistSubscrIdxRef,{integerlistVal:={0,2}}); |
| f_EPTF_Var_adjustContent(v_remoteFloatlistSubscrIdxRef,{floatlistVal:={0.0,2.0}}); |
| f_EPTF_Var_adjustContent(v_remoteCharstringlistSubscrIdxRef,{charstringlistVal:={"0","2"}}); |
| f_EPTF_Var_adjustContent(v_remoteStatusLEDSubscrIdxRef,{statusLEDVal:={led_black,"2"}}); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| f_EPTF_Var_adjustContent(v_remoteIntSubscrIdx,{intVal:=3}); |
| f_EPTF_Var_adjustContent(v_remoteFloatSubscrIdx,{floatVal:=3.0}); |
| f_EPTF_Var_adjustContent(v_remoteBoolSubscrIdx,{boolVal:=true}); |
| f_EPTF_Var_adjustContent(v_remoteCharstringSubscrIdx,{charstringVal:="3.0"}); |
| f_EPTF_Var_adjustContent(v_remoteOctetstringSubscrIdx,{octetstringVal:='03'O}); |
| f_EPTF_Var_adjustContent(v_remoteHexstringSubscrIdx,{hexstringVal:='03'H}); |
| f_EPTF_Var_adjustContent(v_remoteBitstringSubscrIdx,{bitstringVal:='10'B}); |
| f_EPTF_Var_adjustContent(v_remoteIntegerlistSubscrIdx,{integerlistVal:={0,3}}); |
| f_EPTF_Var_adjustContent(v_remoteFloatlistSubscrIdx,{floatlistVal:={0.0,3.0}}); |
| f_EPTF_Var_adjustContent(v_remoteCharstringlistSubscrIdx,{charstringlistVal:={"0","3"}}); |
| f_EPTF_Var_adjustContent(v_remoteStatusLEDSubscrIdx,{statusLEDVal:={led_blue,"1"}}); |
| |
| f_EPTF_Var_adjustContent(v_remoteIntSubscrIdxRef,{intVal:=3}); |
| f_EPTF_Var_adjustContent(v_remoteFloatSubscrIdxRef,{floatVal:=3.0}); |
| f_EPTF_Var_adjustContent(v_remoteBoolSubscrIdxRef,{boolVal:=true}); |
| f_EPTF_Var_adjustContent(v_remoteCharstringSubscrIdxRef,{charstringVal:="3.0"}); |
| f_EPTF_Var_adjustContent(v_remoteOctetstringSubscrIdxRef,{octetstringVal:='03'O}); |
| f_EPTF_Var_adjustContent(v_remoteHexstringSubscrIdxRef,{hexstringVal:='03'H}); |
| f_EPTF_Var_adjustContent(v_remoteBitstringSubscrIdxRef,{bitstringVal:='10'B}); |
| f_EPTF_Var_adjustContent(v_remoteIntegerlistSubscrIdxRef,{integerlistVal:={0,3}}); |
| f_EPTF_Var_adjustContent(v_remoteFloatlistSubscrIdxRef,{floatlistVal:={0.0,3.0}}); |
| f_EPTF_Var_adjustContent(v_remoteCharstringlistSubscrIdxRef,{charstringlistVal:={"0","3"}}); |
| f_EPTF_Var_adjustContent(v_remoteStatusLEDSubscrIdxRef,{statusLEDVal:={led_blue,"1"}}); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_BufferedVariableTest_ProviderComponent(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT{ |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_setSyncInterval(0.4); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| //Create the provider variables |
| f_initVariables(); |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| log("Modify the values"); |
| f_EPTF_Var_setContent(v_intVarRefIdx,{intVal:=2}); |
| f_EPTF_Var_setContent(v_floatVarRefIdx,{floatVal:=2.0}); |
| f_EPTF_Var_setContent(v_boolVarRefIdx,{boolVal:=false}); |
| f_EPTF_Var_setContent(v_charstringVarRefIdx,{charstringVal:="2.0"}); |
| f_EPTF_Var_setContent(v_octetstringVarRefIdx,{octetstringVal:='02'O}); |
| f_EPTF_Var_setContent(v_hexstringVarRefIdx,{hexstringVal:='02'H}); |
| f_EPTF_Var_setContent(v_bitstringVarRefIdx,{bitstringVal:='11'B}); |
| f_EPTF_Var_setContent(v_integerlistVarRefIdx,{integerlistVal:={0,2}}); |
| f_EPTF_Var_setContent(v_floatlistVarRefIdx,{floatlistVal:={0.0,2.0}}); |
| f_EPTF_Var_setContent(v_charstringlistVarRefIdx,{charstringlistVal:={"0","2"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarRefIdx,{statusLEDVal:={led_black,"2"}}); |
| |
| f_EPTF_Var_setContent(v_intVarIdx,{intVal:=4}); |
| f_EPTF_Var_setContent(v_floatVarIdx,{floatVal:=4.0}); |
| f_EPTF_Var_setContent(v_boolVarIdx,{boolVal:=true}); |
| f_EPTF_Var_setContent(v_charstringVarIdx,{charstringVal:="4.0"}); |
| f_EPTF_Var_setContent(v_octetstringVarIdx,{octetstringVal:='04'O}); |
| f_EPTF_Var_setContent(v_hexstringVarIdx,{hexstringVal:='04'H}); |
| f_EPTF_Var_setContent(v_bitstringVarIdx,{bitstringVal:='1111'B}); |
| f_EPTF_Var_setContent(v_integerlistVarIdx,{integerlistVal:={0,4}}); |
| f_EPTF_Var_setContent(v_floatlistVarIdx,{floatlistVal:={0.0,4.0}}); |
| f_EPTF_Var_setContent(v_charstringlistVarIdx,{charstringlistVal:={"0","4"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarIdx,{statusLEDVal:={led_blue,"1"}}); |
| |
| log("Send the modification"); |
| f_EPTF_Var_refreshContent(v_intVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatVarRefIdx); |
| f_EPTF_Var_refreshContent(v_boolVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_octetstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_integerlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarRefIdx); |
| |
| f_EPTF_Var_refreshContent(v_intVarIdx); |
| f_EPTF_Var_refreshContent(v_floatVarIdx); |
| f_EPTF_Var_refreshContent(v_boolVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarIdx); |
| f_EPTF_Var_refreshContent(v_octetstringVarIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarIdx); |
| f_EPTF_Var_refreshContent(v_integerlistVarIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarIdx); |
| |
| log("Modify the values"); |
| f_EPTF_Var_setContent(v_intVarRefIdx,{intVal:=3}); |
| f_EPTF_Var_setContent(v_floatVarRefIdx,{floatVal:=3.0}); |
| f_EPTF_Var_setContent(v_boolVarRefIdx,{boolVal:=true}); |
| f_EPTF_Var_setContent(v_charstringVarRefIdx,{charstringVal:="3.0"}); |
| f_EPTF_Var_setContent(v_octetstringVarRefIdx,{octetstringVal:='03'O}); |
| f_EPTF_Var_setContent(v_hexstringVarRefIdx,{hexstringVal:='03'H}); |
| f_EPTF_Var_setContent(v_bitstringVarRefIdx,{bitstringVal:='10'B}); |
| f_EPTF_Var_setContent(v_integerlistVarRefIdx,{integerlistVal:={0,3}}); |
| f_EPTF_Var_setContent(v_floatlistVarRefIdx,{floatlistVal:={0.0,3.0}}); |
| f_EPTF_Var_setContent(v_charstringlistVarRefIdx,{charstringlistVal:={"0","3"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarRefIdx,{statusLEDVal:={led_blue,"1"}}); |
| |
| f_EPTF_Var_setContent(v_intVarIdx,{intVal:=5}); |
| f_EPTF_Var_setContent(v_floatVarIdx,{floatVal:=5.0}); |
| f_EPTF_Var_setContent(v_boolVarIdx,{boolVal:=false}); |
| f_EPTF_Var_setContent(v_charstringVarIdx,{charstringVal:="5.0"}); |
| f_EPTF_Var_setContent(v_octetstringVarIdx,{octetstringVal:='05'O}); |
| f_EPTF_Var_setContent(v_hexstringVarIdx,{hexstringVal:='05'H}); |
| f_EPTF_Var_setContent(v_bitstringVarIdx,{bitstringVal:='11111'B}); |
| f_EPTF_Var_setContent(v_integerlistVarIdx,{integerlistVal:={0,5}}); |
| f_EPTF_Var_setContent(v_floatlistVarIdx,{floatlistVal:={0.0,5.0}}); |
| f_EPTF_Var_setContent(v_charstringlistVarIdx,{charstringlistVal:={"0","5"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarIdx,{statusLEDVal:={led_black,"2"}}); |
| |
| log("Send the modification"); |
| f_EPTF_Var_refreshContent(v_intVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatVarRefIdx); |
| f_EPTF_Var_refreshContent(v_boolVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_octetstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_integerlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarRefIdx); |
| |
| f_EPTF_Var_refreshContent(v_intVarIdx); |
| f_EPTF_Var_refreshContent(v_floatVarIdx); |
| f_EPTF_Var_refreshContent(v_boolVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarIdx); |
| f_EPTF_Var_refreshContent(v_octetstringVarIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarIdx); |
| f_EPTF_Var_refreshContent(v_integerlistVarIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarIdx); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| |
| function f_EPTF_Var_BufferedVariableTest_SubscriberComponent(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT{ |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| //Subscribe to the variables on the provider component |
| f_subscribeVariables(pl_parents, timeLine); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| log("Get the modified values"); |
| var integer vl_intValue; |
| var float vl_floatValue; |
| var boolean vl_boolValue; |
| var charstring vl_charstringValue; |
| var octetstring vl_octetstringValue; |
| var hexstring vl_hexstringValue; |
| var bitstring vl_bitstringValue; |
| var EPTF_IntegerList vl_integerlistValue; |
| var EPTF_FloatList vl_floatlistValue; |
| var EPTF_CharstringList vl_charstringlistValue; |
| var EPTF_StatusLED vl_statusLEDValue; |
| |
| |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdx); |
| f_setverdictFail(vl_intValue!=3); |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdxRef); |
| f_setverdictFail(vl_intValue!=5); |
| |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdx); |
| f_setverdictFail(vl_floatValue!=3.0); |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdxRef); |
| f_setverdictFail(vl_floatValue!=5.0); |
| |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdx); |
| f_setverdictFail(vl_boolValue!=true); |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdxRef); |
| f_setverdictFail(vl_boolValue!=false); |
| |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdx); |
| f_setverdictFail(vl_charstringValue!="3.0"); |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdxRef); |
| f_setverdictFail(vl_charstringValue!="5.0"); |
| |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdx); |
| f_setverdictFail(vl_octetstringValue!='03'O); |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdxRef); |
| f_setverdictFail(vl_octetstringValue!='05'O); |
| |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdx); |
| f_setverdictFail(vl_hexstringValue!='03'H); |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdxRef); |
| f_setverdictFail(vl_hexstringValue!='05'H); |
| |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdx); |
| f_setverdictFail(vl_bitstringValue!='10'B); |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdxRef); |
| f_setverdictFail(vl_bitstringValue!='11111'B); |
| |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdx); |
| f_setverdictFail(vl_integerlistValue!={0,3}); |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdxRef); |
| f_setverdictFail(vl_integerlistValue!={0,5}); |
| |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdx); |
| f_setverdictFail(vl_floatlistValue!={0.0,3.0}); |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdxRef); |
| f_setverdictFail(vl_floatlistValue!={0.0,5.0}); |
| |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdx); |
| f_setverdictFail(vl_charstringlistValue!={"0","3"}); |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdxRef); |
| f_setverdictFail(vl_charstringlistValue!={"0","5"}); |
| |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdx); |
| f_setverdictFail(vl_statusLEDValue!={led_blue,"1"}); |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdxRef); |
| f_setverdictFail(vl_statusLEDValue!={led_black,"2"}); |
| |
| var EPTF_Var_TimeLine vl_timeLine; |
| f_EPTF_Var_getTimeLine(v_remoteIntSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteIntSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteFloatSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteFloatSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteBoolSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteBoolSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteCharstringSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteCharstringSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteOctetstringSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteOctetstringSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteHexstringSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteHexstringSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteBitstringSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteBitstringSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteIntegerlistSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteIntegerlistSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteFloatlistSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteFloatlistSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteCharstringlistSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteCharstringlistSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteStatusLEDSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteStatusLEDSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_LongBufferedVariableTest_ProviderComponent(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT{ |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_setSyncInterval(0.9); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| |
| |
| //Create the provider variables |
| f_initVariables(); |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| for(var integer i:=2; i<=650; i := i +1){ |
| f_EPTF_Var_setContent(v_intVarRefIdx,{intVal:=i}); |
| f_EPTF_Var_setContent(v_intVarIdx,{intVal:=i-1}); |
| f_EPTF_Var_setContent(v_floatVarRefIdx,{floatVal:=int2float(i)}); |
| f_EPTF_Var_setContent(v_floatVarIdx,{floatVal:=int2float(i-1)}); |
| f_EPTF_Var_setContent(v_boolVarRefIdx,{boolVal:=false}); |
| f_EPTF_Var_setContent(v_boolVarIdx,{boolVal:=true}); |
| |
| f_EPTF_Var_setContent(v_octetstringVarRefIdx,{octetstringVal:=int2oct(i,6)}); |
| f_EPTF_Var_setContent(v_octetstringVarIdx,{octetstringVal:=int2oct(i-1,6)}); |
| f_EPTF_Var_setContent(v_hexstringVarRefIdx,{hexstringVal:=int2hex(i,6)}); |
| f_EPTF_Var_setContent(v_hexstringVarIdx,{hexstringVal:=int2hex(i-1,6)}); |
| |
| f_EPTF_Var_setContent(v_integerlistVarRefIdx,{integerlistVal:={0,i}}); |
| f_EPTF_Var_setContent(v_integerlistVarIdx,{integerlistVal:={0,i-1}}); |
| f_EPTF_Var_setContent(v_floatlistVarRefIdx,{floatlistVal:={0.0,int2float(i)}}); |
| f_EPTF_Var_setContent(v_floatlistVarIdx,{floatlistVal:={0.0,int2float(i-1)}}); |
| f_EPTF_Var_setContent(v_charstringlistVarRefIdx,{charstringlistVal:={"0",int2str(i)}}); |
| f_EPTF_Var_setContent(v_charstringlistVarIdx,{charstringlistVal:={"0",int2str(i-1)}}); |
| f_EPTF_Var_setContent(v_statusLEDVarRefIdx,{statusLEDVal:={led_black,"2"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarIdx,{statusLEDVal:={led_blue,"1"}}); |
| |
| f_EPTF_Var_refreshContent(v_intVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatVarRefIdx); |
| f_EPTF_Var_refreshContent(v_boolVarRefIdx); |
| |
| f_EPTF_Var_refreshContent(v_octetstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarRefIdx); |
| |
| f_EPTF_Var_refreshContent(v_integerlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarRefIdx); |
| |
| f_EPTF_Var_refreshContent(v_intVarIdx); |
| f_EPTF_Var_refreshContent(v_floatVarIdx); |
| f_EPTF_Var_refreshContent(v_boolVarIdx); |
| |
| f_EPTF_Var_refreshContent(v_octetstringVarIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarIdx); |
| |
| f_EPTF_Var_refreshContent(v_integerlistVarIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarIdx); |
| } |
| for(var integer i:=2; i<=127; i := i +1){ |
| f_EPTF_Var_setContent(v_charstringVarRefIdx,{charstringVal:=int2char(i)}); |
| f_EPTF_Var_setContent(v_charstringVarIdx,{charstringVal:=int2char(i-1)}); |
| f_EPTF_Var_setContent(v_bitstringVarRefIdx,{bitstringVal:=int2bit(i,8)}); |
| f_EPTF_Var_setContent(v_bitstringVarIdx,{bitstringVal:=int2bit(i-1,8)}); |
| f_EPTF_Var_refreshContent(v_charstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarIdx); |
| } |
| |
| |
| timer T_WAIT2 := 16.0; |
| |
| T_WAIT2.start; |
| alt { |
| [] T_WAIT2.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| |
| function f_EPTF_Var_LongBufferedVariableTest_SubscriberComponent(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT{ |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| //Subscribe to the variables on the provider component |
| f_subscribeVariables(pl_parents,timeLine); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| var integer vl_intValue; |
| var float vl_floatValue; |
| var boolean vl_boolValue; |
| var charstring vl_charstringValue; |
| var octetstring vl_octetstringValue; |
| var hexstring vl_hexstringValue; |
| var bitstring vl_bitstringValue; |
| var EPTF_IntegerList vl_integerlistValue; |
| var EPTF_FloatList vl_floatlistValue; |
| var EPTF_CharstringList vl_charstringlistValue; |
| var EPTF_StatusLED vl_statusLEDValue; |
| |
| |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdx); |
| f_setverdictFail(vl_intValue!=650); |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdxRef); |
| f_setverdictFail(vl_intValue!=649); |
| |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdx); |
| f_setverdictFail(vl_floatValue!=int2float(650)); |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdxRef); |
| f_setverdictFail(vl_floatValue!=int2float(649)); |
| |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdx); |
| f_setverdictFail(vl_boolValue!=false); |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdxRef); |
| f_setverdictFail(vl_boolValue!=true); |
| |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdx); |
| f_setverdictFail(vl_charstringValue!=int2char(127)); |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdxRef); |
| f_setverdictFail(vl_charstringValue!=int2char(126)); |
| |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdx); |
| f_setverdictFail(vl_octetstringValue!=int2oct(650,6)); |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdxRef); |
| f_setverdictFail(vl_octetstringValue!=int2oct(649,6)); |
| |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdx); |
| f_setverdictFail(vl_hexstringValue!=int2hex(650,6)); |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdxRef); |
| f_setverdictFail(vl_hexstringValue!=int2hex(649,6)); |
| |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdx); |
| f_setverdictFail(vl_bitstringValue!=int2bit(127,8)); |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdxRef); |
| f_setverdictFail(vl_bitstringValue!=int2bit(126,8)); |
| |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdx); |
| f_setverdictFail(vl_integerlistValue!={0,650}); |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdxRef); |
| f_setverdictFail(vl_integerlistValue!={0,649}); |
| |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdx); |
| f_setverdictFail(vl_floatlistValue!={0.0,650.0}); |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdxRef); |
| f_setverdictFail(vl_floatlistValue!={0.0,649.0}); |
| |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdx); |
| f_setverdictFail(vl_charstringlistValue!={"0","650"}); |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdxRef); |
| f_setverdictFail(vl_charstringlistValue!={"0","649"}); |
| |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdx); |
| f_setverdictFail(vl_statusLEDValue!={led_black,"2"}); |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdxRef); |
| f_setverdictFail(vl_statusLEDValue!={led_blue,"1"}); |
| |
| var EPTF_Var_TimeLine vl_timeLine; |
| f_EPTF_Var_getTimeLine(v_remoteIntSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=649); |
| f_EPTF_Var_getTimeLine(v_remoteIntSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=649); |
| f_EPTF_Var_getTimeLine(v_remoteFloatSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=649); |
| f_EPTF_Var_getTimeLine(v_remoteFloatSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=649); |
| f_EPTF_Var_getTimeLine(v_remoteBoolSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=649); |
| f_EPTF_Var_getTimeLine(v_remoteBoolSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=649); |
| f_EPTF_Var_getTimeLine(v_remoteCharstringSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=126); |
| f_EPTF_Var_getTimeLine(v_remoteCharstringSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=126); |
| f_EPTF_Var_getTimeLine(v_remoteOctetstringSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=649); |
| f_EPTF_Var_getTimeLine(v_remoteOctetstringSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=649); |
| f_EPTF_Var_getTimeLine(v_remoteHexstringSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=649); |
| f_EPTF_Var_getTimeLine(v_remoteHexstringSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=649); |
| f_EPTF_Var_getTimeLine(v_remoteBitstringSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=126); |
| f_EPTF_Var_getTimeLine(v_remoteBitstringSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=126); |
| f_EPTF_Var_getTimeLine(v_remoteIntegerlistSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=649); |
| f_EPTF_Var_getTimeLine(v_remoteIntegerlistSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=649); |
| f_EPTF_Var_getTimeLine(v_remoteFloatlistSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=649); |
| f_EPTF_Var_getTimeLine(v_remoteFloatlistSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=649); |
| f_EPTF_Var_getTimeLine(v_remoteCharstringlistSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=649); |
| f_EPTF_Var_getTimeLine(v_remoteCharstringlistSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=649); |
| f_EPTF_Var_getTimeLine(v_remoteStatusLEDSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=649); |
| f_EPTF_Var_getTimeLine(v_remoteStatusLEDSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=649); |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_complexSubscribeTest_ProviderComponent(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT{ |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| //Create the provider variables |
| f_initVariables(); |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| log("Modify the values"); |
| f_EPTF_Var_setContent(v_intVarRefIdx,{intVal:=2}); |
| f_EPTF_Var_setContent(v_floatVarRefIdx,{floatVal:=2.0}); |
| f_EPTF_Var_setContent(v_boolVarRefIdx,{boolVal:=false}); |
| f_EPTF_Var_setContent(v_charstringVarRefIdx,{charstringVal:="2.0"}); |
| f_EPTF_Var_setContent(v_octetstringVarRefIdx,{octetstringVal:='02'O}); |
| f_EPTF_Var_setContent(v_hexstringVarRefIdx,{hexstringVal:='02'H}); |
| f_EPTF_Var_setContent(v_bitstringVarRefIdx,{bitstringVal:='11'B}); |
| f_EPTF_Var_setContent(v_integerlistVarRefIdx,{integerlistVal:={0,2}}); |
| f_EPTF_Var_setContent(v_floatlistVarRefIdx,{floatlistVal:={0.0,2.0}}); |
| f_EPTF_Var_setContent(v_charstringlistVarRefIdx,{charstringlistVal:={"0","2"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarRefIdx,{statusLEDVal:={led_black,"2"}}); |
| |
| f_EPTF_Var_setContent(v_intVarIdx,{intVal:=3}); |
| f_EPTF_Var_setContent(v_floatVarIdx,{floatVal:=3.0}); |
| f_EPTF_Var_setContent(v_boolVarIdx,{boolVal:=true}); |
| f_EPTF_Var_setContent(v_charstringVarIdx,{charstringVal:="3.0"}); |
| f_EPTF_Var_setContent(v_octetstringVarIdx,{octetstringVal:='03'O}); |
| f_EPTF_Var_setContent(v_hexstringVarIdx,{hexstringVal:='03'H}); |
| f_EPTF_Var_setContent(v_bitstringVarIdx,{bitstringVal:='111'B}); |
| f_EPTF_Var_setContent(v_integerlistVarIdx,{integerlistVal:={0,3}}); |
| f_EPTF_Var_setContent(v_floatlistVarIdx,{floatlistVal:={0.0,3.0}}); |
| f_EPTF_Var_setContent(v_charstringlistVarIdx,{charstringlistVal:={"0","3"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarIdx,{statusLEDVal:={led_blue,"1"}}); |
| |
| log("Send the modification"); |
| f_EPTF_Var_refreshContent(v_intVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatVarRefIdx); |
| f_EPTF_Var_refreshContent(v_boolVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_octetstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_integerlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarRefIdx); |
| |
| f_EPTF_Var_refreshContent(v_intVarIdx); |
| f_EPTF_Var_refreshContent(v_floatVarIdx); |
| f_EPTF_Var_refreshContent(v_boolVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarIdx); |
| f_EPTF_Var_refreshContent(v_octetstringVarIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarIdx); |
| f_EPTF_Var_refreshContent(v_integerlistVarIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarIdx); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_complexSubscribeTest_SubscriberComponent1(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT{ |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| //Subscribe to the variables on the provider component |
| f_subscribeVariables(pl_parents,realtime); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort2(true,pl_parents[1]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort2.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| log("Get the modified values"); |
| var integer vl_intValue; |
| var float vl_floatValue; |
| var boolean vl_boolValue; |
| var charstring vl_charstringValue; |
| var octetstring vl_octetstringValue; |
| var hexstring vl_hexstringValue; |
| var bitstring vl_bitstringValue; |
| var EPTF_IntegerList vl_integerlistValue; |
| var EPTF_FloatList vl_floatlistValue; |
| var EPTF_CharstringList vl_charstringlistValue; |
| var EPTF_StatusLED vl_statusLEDValue; |
| |
| |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdx); |
| f_setverdictFail(vl_intValue!=2); |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdxRef); |
| f_setverdictFail(vl_intValue!=3); |
| |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdx); |
| f_setverdictFail(vl_floatValue!=2.0); |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdxRef); |
| f_setverdictFail(vl_floatValue!=3.0); |
| |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdx); |
| f_setverdictFail(vl_boolValue!=false); |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdxRef); |
| f_setverdictFail(vl_boolValue!=true); |
| |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdx); |
| f_setverdictFail(vl_charstringValue!="2.0"); |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdxRef); |
| f_setverdictFail(vl_charstringValue!="3.0"); |
| |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdx); |
| f_setverdictFail(vl_octetstringValue!='02'O); |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdxRef); |
| f_setverdictFail(vl_octetstringValue!='03'O); |
| |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdx); |
| f_setverdictFail(vl_hexstringValue!='02'H); |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdxRef); |
| f_setverdictFail(vl_hexstringValue!='03'H); |
| |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdx); |
| f_setverdictFail(vl_bitstringValue!='11'B); |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdxRef); |
| f_setverdictFail(vl_bitstringValue!='111'B); |
| |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdx); |
| f_setverdictFail(vl_integerlistValue!={0,2}); |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdxRef); |
| f_setverdictFail(vl_integerlistValue!={0,3}); |
| |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdx); |
| f_setverdictFail(vl_floatlistValue!={0.0,2.0}); |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdxRef); |
| f_setverdictFail(vl_floatlistValue!={0.0,3.0}); |
| |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdx); |
| f_setverdictFail(vl_charstringlistValue!={"0","2"}); |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdxRef); |
| f_setverdictFail(vl_charstringlistValue!={"0","3"}); |
| |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdx); |
| f_setverdictFail(vl_statusLEDValue!={led_black,"2"}); |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdxRef); |
| f_setverdictFail(vl_statusLEDValue!={led_blue,"1"}); |
| |
| f_sendstatusPort2(true,pl_parents[1]); |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_complexSubscribeTest_SubscriberComponent2(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT{ |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"intVarRef",realtime, v_remoteIntSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"floatVarRef",realtime, v_remoteFloatSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"boolVarRef",realtime, v_remoteBoolSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"charstringVarRef",realtime, v_remoteCharstringSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"octetstringVarRef",realtime, v_remoteOctetstringSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"hexstringVarRef",realtime, v_remoteHexstringSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"bitstringVarRef",realtime, v_remoteBitstringSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"integerlistVarRef",realtime, v_remoteIntegerlistSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"floatlistVarRef",realtime, v_remoteFloatlistSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"charstringlistVarRef",realtime, v_remoteCharstringlistSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"statusLEDVarRef",realtime, v_remoteStatusLEDSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemoteIntRef(v_intVar,pl_parents[0],"test1."&"intVar",realtime, v_remoteIntSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteFloatRef(v_floatVar,pl_parents[0],"test1."&"floatVar",realtime, v_remoteFloatSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteBoolRef(v_boolVar,pl_parents[0],"test1."&"boolVar",realtime, v_remoteBoolSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteCharstringRef(v_charstringVar,pl_parents[0],"test1."&"charstringVar",realtime, v_remoteCharstringSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteOctetstringRef(v_octetstringVar,pl_parents[0],"test1."&"octetstringVar",realtime, v_remoteOctetstringSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteHexstringRef(v_hexstringVar,pl_parents[0],"test1."&"hexstringVar",realtime, v_remoteHexstringSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteBitstringRef(v_bitstringVar,pl_parents[0],"test1."&"bitstringVar",realtime, v_remoteBitstringSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteIntegerlistRef(v_integerlistVar,pl_parents[0],"test1."&"integerlistVar",realtime, v_remoteIntegerlistSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteFloatlistRef(v_floatlistVar,pl_parents[0],"test1."&"floatlistVar",realtime, v_remoteFloatlistSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteCharstringlistRef(v_charstringlistVar,pl_parents[0],"test1."&"charstringlistVar",realtime, v_remoteCharstringlistSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteStatusLEDValRef(v_statusLEDVar,pl_parents[0],"test1."&"statusLEDVar",realtime, v_remoteStatusLEDSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| log("Get the modified values"); |
| var integer vl_intValue; |
| var float vl_floatValue; |
| var boolean vl_boolValue; |
| var charstring vl_charstringValue; |
| var octetstring vl_octetstringValue; |
| var hexstring vl_hexstringValue; |
| var bitstring vl_bitstringValue; |
| var EPTF_IntegerList vl_integerlistValue; |
| var EPTF_FloatList vl_floatlistValue; |
| var EPTF_CharstringList vl_charstringlistValue; |
| var EPTF_StatusLED vl_statusLEDValue; |
| |
| |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdx); |
| f_setverdictFail(vl_intValue!=2); |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdxRef); |
| f_setverdictFail(vl_intValue!=3); |
| |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdx); |
| f_setverdictFail(vl_floatValue!=2.0); |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdxRef); |
| f_setverdictFail(vl_floatValue!=3.0); |
| |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdx); |
| f_setverdictFail(vl_boolValue!=false); |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdxRef); |
| f_setverdictFail(vl_boolValue!=true); |
| |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdx); |
| f_setverdictFail(vl_charstringValue!="2.0"); |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdxRef); |
| f_setverdictFail(vl_charstringValue!="3.0"); |
| |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdx); |
| f_setverdictFail(vl_octetstringValue!='02'O); |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdxRef); |
| f_setverdictFail(vl_octetstringValue!='03'O); |
| |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdx); |
| f_setverdictFail(vl_hexstringValue!='02'H); |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdxRef); |
| f_setverdictFail(vl_hexstringValue!='03'H); |
| |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdx); |
| f_setverdictFail(vl_bitstringValue!='11'B); |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdxRef); |
| f_setverdictFail(vl_bitstringValue!='111'B); |
| |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdx); |
| f_setverdictFail(vl_integerlistValue!={0,2}); |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdxRef); |
| f_setverdictFail(vl_integerlistValue!={0,3}); |
| |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdx); |
| f_setverdictFail(vl_floatlistValue!={0.0,2.0}); |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdxRef); |
| f_setverdictFail(vl_floatlistValue!={0.0,3.0}); |
| |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdx); |
| f_setverdictFail(vl_charstringlistValue!={"0","2"}); |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdxRef); |
| f_setverdictFail(vl_charstringlistValue!={"0","3"}); |
| |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdx); |
| f_setverdictFail(vl_statusLEDValue!={led_black,"2"}); |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdxRef); |
| f_setverdictFail(vl_statusLEDValue!={led_blue,"1"}); |
| |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_complexAdjustTest_ProviderComponent(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT{ |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| //Create the provider variables |
| f_initVariables(); |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| log("Get the modified values"); |
| var integer vl_intValue; |
| var float vl_floatValue; |
| var boolean vl_boolValue; |
| var charstring vl_charstringValue; |
| var octetstring vl_octetstringValue; |
| var hexstring vl_hexstringValue; |
| var bitstring vl_bitstringValue; |
| var EPTF_IntegerList vl_integerlistValue; |
| var EPTF_FloatList vl_floatlistValue; |
| var EPTF_CharstringList vl_charstringlistValue; |
| var EPTF_StatusLED vl_statusLEDValue; |
| |
| |
| //Get and check the values of the variables |
| vl_intValue := f_EPTF_Var_getIntValue(v_intVarRefIdx); |
| f_setverdictFail((v_intVar!=2)or(v_intVar!=vl_intValue)); |
| vl_intValue := f_EPTF_Var_getIntValue(v_intVarIdx); |
| f_setverdictFail((vl_intValue!=3)); |
| |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_floatVarRefIdx); |
| f_setverdictFail((v_floatVar!=2.0)or(v_floatVar!=vl_floatValue)); |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_floatVarIdx); |
| f_setverdictFail((vl_floatValue!=3.0)); |
| |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_boolVarRefIdx); |
| f_setverdictFail((v_boolVar!=false)or(v_boolVar!=vl_boolValue)); |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_boolVarIdx); |
| f_setverdictFail((vl_boolValue!=true)); |
| |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_charstringVarRefIdx); |
| f_setverdictFail((v_charstringVar!="2.0")or(v_charstringVar!=vl_charstringValue)); |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_charstringVarIdx); |
| f_setverdictFail((vl_charstringValue!="3.0")); |
| |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_octetstringVarRefIdx); |
| f_setverdictFail((v_octetstringVar!='02'O)or(v_octetstringVar!=vl_octetstringValue)); |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_octetstringVarIdx); |
| f_setverdictFail((vl_octetstringValue!='03'O)); |
| |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_hexstringVarRefIdx); |
| f_setverdictFail((v_hexstringVar!='02'H)or(v_hexstringVar!=vl_hexstringValue)); |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_hexstringVarIdx); |
| f_setverdictFail((vl_hexstringValue!='03'H)); |
| |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_bitstringVarRefIdx); |
| f_setverdictFail((v_bitstringVar!='11'B)or(v_bitstringVar!=vl_bitstringValue)); |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_bitstringVarIdx); |
| f_setverdictFail((vl_bitstringValue!='111'B)); |
| |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_integerlistVarRefIdx); |
| f_setverdictFail((v_integerlistVar!={0,2})or(v_integerlistVar!=vl_integerlistValue)); |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_integerlistVarIdx); |
| f_setverdictFail((vl_integerlistValue!={0,3})); |
| |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_floatlistVarRefIdx); |
| f_setverdictFail((v_floatlistVar!={0.0,2.0})or(v_floatlistVar!=vl_floatlistValue)); |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_floatlistVarIdx); |
| f_setverdictFail((vl_floatlistValue!={0.0,3.0})); |
| |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_charstringlistVarRefIdx); |
| f_setverdictFail((v_charstringlistVar!={"0","2"})or(v_charstringlistVar!=vl_charstringlistValue)); |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_charstringlistVarIdx); |
| f_setverdictFail((vl_charstringlistValue!={"0","3"})); |
| |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_statusLEDVarRefIdx); |
| f_setverdictFail((v_statusLEDVar!={led_black,"2"})or(v_statusLEDVar!=vl_statusLEDValue)); |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_statusLEDVarIdx); |
| f_setverdictFail((vl_statusLEDValue!={led_blue,"1"})); |
| |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_complexAdjustTest_SubscriberComponent1(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT{ |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| //Subscribe to the variables on the provider component |
| f_subscribeVariables(pl_parents,realtime); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort2(true,pl_parents[1]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort2.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_complexAdjustTest_SubscriberComponent2(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT{ |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"intVarRef",realtime, v_remoteIntSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"floatVarRef",realtime, v_remoteFloatSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"boolVarRef",realtime, v_remoteBoolSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"charstringVarRef",realtime, v_remoteCharstringSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"octetstringVarRef",realtime, v_remoteOctetstringSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"hexstringVarRef",realtime, v_remoteHexstringSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"bitstringVarRef",realtime, v_remoteBitstringSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"integerlistVarRef",realtime, v_remoteIntegerlistSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"floatlistVarRef",realtime, v_remoteFloatlistSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"charstringlistVarRef",realtime, v_remoteCharstringlistSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"statusLEDVarRef",realtime, v_remoteStatusLEDSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemoteIntRef(v_intVar,pl_parents[0],"test1."&"intVar",realtime, v_remoteIntSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteFloatRef(v_floatVar,pl_parents[0],"test1."&"floatVar",realtime, v_remoteFloatSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteBoolRef(v_boolVar,pl_parents[0],"test1."&"boolVar",realtime, v_remoteBoolSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteCharstringRef(v_charstringVar,pl_parents[0],"test1."&"charstringVar",realtime, v_remoteCharstringSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteOctetstringRef(v_octetstringVar,pl_parents[0],"test1."&"octetstringVar",realtime, v_remoteOctetstringSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteHexstringRef(v_hexstringVar,pl_parents[0],"test1."&"hexstringVar",realtime, v_remoteHexstringSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteBitstringRef(v_bitstringVar,pl_parents[0],"test1."&"bitstringVar",realtime, v_remoteBitstringSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteIntegerlistRef(v_integerlistVar,pl_parents[0],"test1."&"integerlistVar",realtime, v_remoteIntegerlistSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteFloatlistRef(v_floatlistVar,pl_parents[0],"test1."&"floatlistVar",realtime, v_remoteFloatlistSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteCharstringlistRef(v_charstringlistVar,pl_parents[0],"test1."&"charstringlistVar",realtime, v_remoteCharstringlistSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteStatusLEDValRef(v_statusLEDVar,pl_parents[0],"test1."&"statusLEDVar",realtime, v_remoteStatusLEDSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| log("Modify the values"); |
| f_EPTF_Var_adjustContent(v_remoteIntSubscrIdx,{intVal:=2}); |
| f_EPTF_Var_adjustContent(v_remoteFloatSubscrIdx,{floatVal:=2.0}); |
| f_EPTF_Var_adjustContent(v_remoteBoolSubscrIdx,{boolVal:=false}); |
| f_EPTF_Var_adjustContent(v_remoteCharstringSubscrIdx,{charstringVal:="2.0"}); |
| f_EPTF_Var_adjustContent(v_remoteOctetstringSubscrIdx,{octetstringVal:='02'O}); |
| f_EPTF_Var_adjustContent(v_remoteHexstringSubscrIdx,{hexstringVal:='02'H}); |
| f_EPTF_Var_adjustContent(v_remoteBitstringSubscrIdx,{bitstringVal:='11'B}); |
| f_EPTF_Var_adjustContent(v_remoteIntegerlistSubscrIdx,{integerlistVal:={0,2}}); |
| f_EPTF_Var_adjustContent(v_remoteFloatlistSubscrIdx,{floatlistVal:={0.0,2.0}}); |
| f_EPTF_Var_adjustContent(v_remoteCharstringlistSubscrIdx,{charstringlistVal:={"0","2"}}); |
| f_EPTF_Var_adjustContent(v_remoteStatusLEDSubscrIdx,{statusLEDVal:={led_black,"2"}}); |
| |
| f_EPTF_Var_adjustContent(v_remoteIntSubscrIdxRef,{intVal:=3}); |
| f_EPTF_Var_adjustContent(v_remoteFloatSubscrIdxRef,{floatVal:=3.0}); |
| f_EPTF_Var_adjustContent(v_remoteBoolSubscrIdxRef,{boolVal:=true}); |
| f_EPTF_Var_adjustContent(v_remoteCharstringSubscrIdxRef,{charstringVal:="3.0"}); |
| f_EPTF_Var_adjustContent(v_remoteOctetstringSubscrIdxRef,{octetstringVal:='03'O}); |
| f_EPTF_Var_adjustContent(v_remoteHexstringSubscrIdxRef,{hexstringVal:='03'H}); |
| f_EPTF_Var_adjustContent(v_remoteBitstringSubscrIdxRef,{bitstringVal:='111'B}); |
| f_EPTF_Var_adjustContent(v_remoteIntegerlistSubscrIdxRef,{integerlistVal:={0,3}}); |
| f_EPTF_Var_adjustContent(v_remoteFloatlistSubscrIdxRef,{floatlistVal:={0.0,3.0}}); |
| f_EPTF_Var_adjustContent(v_remoteCharstringlistSubscrIdxRef,{charstringlistVal:={"0","3"}}); |
| f_EPTF_Var_adjustContent(v_remoteStatusLEDSubscrIdxRef,{statusLEDVal:={led_blue,"1"}}); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_complexBufferedVariableTest_ProviderComponent(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT{ |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_setSyncInterval(0.4); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| //Create the provider variables |
| f_initVariables(); |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| log("Modify the values"); |
| f_EPTF_Var_setContent(v_intVarRefIdx,{intVal:=2}); |
| f_EPTF_Var_setContent(v_floatVarRefIdx,{floatVal:=2.0}); |
| f_EPTF_Var_setContent(v_boolVarRefIdx,{boolVal:=false}); |
| f_EPTF_Var_setContent(v_charstringVarRefIdx,{charstringVal:="2.0"}); |
| f_EPTF_Var_setContent(v_octetstringVarRefIdx,{octetstringVal:='02'O}); |
| f_EPTF_Var_setContent(v_hexstringVarRefIdx,{hexstringVal:='02'H}); |
| f_EPTF_Var_setContent(v_bitstringVarRefIdx,{bitstringVal:='11'B}); |
| f_EPTF_Var_setContent(v_integerlistVarRefIdx,{integerlistVal:={0,2}}); |
| f_EPTF_Var_setContent(v_floatlistVarRefIdx,{floatlistVal:={0.0,2.0}}); |
| f_EPTF_Var_setContent(v_charstringlistVarRefIdx,{charstringlistVal:={"0","2"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarRefIdx,{statusLEDVal:={led_black,"2"}}); |
| |
| f_EPTF_Var_setContent(v_intVarIdx,{intVal:=4}); |
| f_EPTF_Var_setContent(v_floatVarIdx,{floatVal:=4.0}); |
| f_EPTF_Var_setContent(v_boolVarIdx,{boolVal:=false}); |
| f_EPTF_Var_setContent(v_charstringVarIdx,{charstringVal:="4.0"}); |
| f_EPTF_Var_setContent(v_octetstringVarIdx,{octetstringVal:='04'O}); |
| f_EPTF_Var_setContent(v_hexstringVarIdx,{hexstringVal:='04'H}); |
| f_EPTF_Var_setContent(v_bitstringVarIdx,{bitstringVal:='1111'B}); |
| f_EPTF_Var_setContent(v_integerlistVarIdx,{integerlistVal:={0,4}}); |
| f_EPTF_Var_setContent(v_floatlistVarIdx,{floatlistVal:={0.0,4.0}}); |
| f_EPTF_Var_setContent(v_charstringlistVarIdx,{charstringlistVal:={"0","4"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarIdx,{statusLEDVal:={led_blue,"1"}}); |
| |
| log("Send the modification"); |
| f_EPTF_Var_refreshContent(v_intVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatVarRefIdx); |
| f_EPTF_Var_refreshContent(v_boolVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_octetstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_integerlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarRefIdx); |
| |
| f_EPTF_Var_refreshContent(v_intVarIdx); |
| f_EPTF_Var_refreshContent(v_floatVarIdx); |
| f_EPTF_Var_refreshContent(v_boolVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarIdx); |
| f_EPTF_Var_refreshContent(v_octetstringVarIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarIdx); |
| f_EPTF_Var_refreshContent(v_integerlistVarIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarIdx); |
| |
| f_EPTF_Var_setContent(v_intVarRefIdx,{intVal:=3}); |
| f_EPTF_Var_setContent(v_floatVarRefIdx,{floatVal:=3.0}); |
| f_EPTF_Var_setContent(v_boolVarRefIdx,{boolVal:=true}); |
| f_EPTF_Var_setContent(v_charstringVarRefIdx,{charstringVal:="3.0"}); |
| f_EPTF_Var_setContent(v_octetstringVarRefIdx,{octetstringVal:='03'O}); |
| f_EPTF_Var_setContent(v_hexstringVarRefIdx,{hexstringVal:='03'H}); |
| f_EPTF_Var_setContent(v_bitstringVarRefIdx,{bitstringVal:='10'B}); |
| f_EPTF_Var_setContent(v_integerlistVarRefIdx,{integerlistVal:={0,3}}); |
| f_EPTF_Var_setContent(v_floatlistVarRefIdx,{floatlistVal:={0.0,3.0}}); |
| f_EPTF_Var_setContent(v_charstringlistVarRefIdx,{charstringlistVal:={"0","3"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarRefIdx,{statusLEDVal:={led_blue,"1"}}); |
| |
| f_EPTF_Var_setContent(v_intVarIdx,{intVal:=5}); |
| f_EPTF_Var_setContent(v_floatVarIdx,{floatVal:=5.0}); |
| f_EPTF_Var_setContent(v_boolVarIdx,{boolVal:=true}); |
| f_EPTF_Var_setContent(v_charstringVarIdx,{charstringVal:="5.0"}); |
| f_EPTF_Var_setContent(v_octetstringVarIdx,{octetstringVal:='05'O}); |
| f_EPTF_Var_setContent(v_hexstringVarIdx,{hexstringVal:='05'H}); |
| f_EPTF_Var_setContent(v_bitstringVarIdx,{bitstringVal:='11111'B}); |
| f_EPTF_Var_setContent(v_integerlistVarIdx,{integerlistVal:={0,5}}); |
| f_EPTF_Var_setContent(v_floatlistVarIdx,{floatlistVal:={0.0,5.0}}); |
| f_EPTF_Var_setContent(v_charstringlistVarIdx,{charstringlistVal:={"0","5"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarIdx,{statusLEDVal:={led_black,"2"}}); |
| |
| log("Send the modification"); |
| f_EPTF_Var_refreshContent(v_intVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatVarRefIdx); |
| f_EPTF_Var_refreshContent(v_boolVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_octetstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_integerlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarRefIdx); |
| |
| f_EPTF_Var_refreshContent(v_intVarIdx); |
| f_EPTF_Var_refreshContent(v_floatVarIdx); |
| f_EPTF_Var_refreshContent(v_boolVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarIdx); |
| f_EPTF_Var_refreshContent(v_octetstringVarIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarIdx); |
| f_EPTF_Var_refreshContent(v_integerlistVarIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarIdx); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| |
| } |
| |
| function f_EPTF_Var_complexBufferedVariableTest_SubscriberComponent1(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT{ |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| //Subscribe to the variables on the provider component |
| f_subscribeVariables(pl_parents,timeLine); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort2(true,pl_parents[1]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort2.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| f_sendstatusPort2(true,pl_parents[1]); |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| |
| } |
| |
| function f_EPTF_Var_complexBufferedVariableTest_SubscriberComponent2(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT{ |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"intVarRef",realtime, v_remoteIntSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"floatVarRef",realtime, v_remoteFloatSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"boolVarRef",realtime, v_remoteBoolSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"charstringVarRef",realtime, v_remoteCharstringSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"octetstringVarRef",realtime, v_remoteOctetstringSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"hexstringVarRef",realtime, v_remoteHexstringSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"bitstringVarRef",realtime, v_remoteBitstringSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"integerlistVarRef",realtime, v_remoteIntegerlistSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"floatlistVarRef",realtime, v_remoteFloatlistSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"charstringlistVarRef",realtime, v_remoteCharstringlistSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"statusLEDVarRef",realtime, v_remoteStatusLEDSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemoteIntRef(v_intVar,pl_parents[0],"test1."&"intVar",realtime, v_remoteIntSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteFloatRef(v_floatVar,pl_parents[0],"test1."&"floatVar",realtime, v_remoteFloatSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteBoolRef(v_boolVar,pl_parents[0],"test1."&"boolVar",realtime, v_remoteBoolSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteCharstringRef(v_charstringVar,pl_parents[0],"test1."&"charstringVar",realtime, v_remoteCharstringSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteOctetstringRef(v_octetstringVar,pl_parents[0],"test1."&"octetstringVar",realtime, v_remoteOctetstringSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteHexstringRef(v_hexstringVar,pl_parents[0],"test1."&"hexstringVar",realtime, v_remoteHexstringSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteBitstringRef(v_bitstringVar,pl_parents[0],"test1."&"bitstringVar",realtime, v_remoteBitstringSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteIntegerlistRef(v_integerlistVar,pl_parents[0],"test1."&"integerlistVar",realtime, v_remoteIntegerlistSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteFloatlistRef(v_floatlistVar,pl_parents[0],"test1."&"floatlistVar",realtime, v_remoteFloatlistSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteCharstringlistRef(v_charstringlistVar,pl_parents[0],"test1."&"charstringlistVar",realtime, v_remoteCharstringlistSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteStatusLEDValRef(v_statusLEDVar,pl_parents[0],"test1."&"statusLEDVar",realtime, v_remoteStatusLEDSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| log("Get the modified values"); |
| var integer vl_intValue; |
| var float vl_floatValue; |
| var boolean vl_boolValue; |
| var charstring vl_charstringValue; |
| var octetstring vl_octetstringValue; |
| var hexstring vl_hexstringValue; |
| var bitstring vl_bitstringValue; |
| var EPTF_IntegerList vl_integerlistValue; |
| var EPTF_FloatList vl_floatlistValue; |
| var EPTF_CharstringList vl_charstringlistValue; |
| var EPTF_StatusLED vl_statusLEDValue; |
| |
| |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdx); |
| f_setverdictFail(vl_intValue!=3); |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdxRef); |
| f_setverdictFail(vl_intValue!=5); |
| |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdx); |
| f_setverdictFail(vl_floatValue!=3.0); |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdxRef); |
| f_setverdictFail(vl_floatValue!=5.0); |
| |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdx); |
| f_setverdictFail(vl_boolValue!=true); |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdxRef); |
| f_setverdictFail(vl_boolValue!=true); |
| |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdx); |
| f_setverdictFail(vl_charstringValue!="3.0"); |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdxRef); |
| f_setverdictFail(vl_charstringValue!="5.0"); |
| |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdx); |
| f_setverdictFail(vl_octetstringValue!='03'O); |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdxRef); |
| f_setverdictFail(vl_octetstringValue!='05'O); |
| |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdx); |
| f_setverdictFail(vl_hexstringValue!='03'H); |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdxRef); |
| f_setverdictFail(vl_hexstringValue!='05'H); |
| |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdx); |
| f_setverdictFail(vl_bitstringValue!='10'B); |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdxRef); |
| f_setverdictFail(vl_bitstringValue!='11111'B); |
| |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdx); |
| f_setverdictFail(vl_integerlistValue!={0,3}); |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdxRef); |
| f_setverdictFail(vl_integerlistValue!={0,5}); |
| |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdx); |
| f_setverdictFail(vl_floatlistValue!={0.0,3.0}); |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdxRef); |
| f_setverdictFail(vl_floatlistValue!={0.0,5.0}); |
| |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdx); |
| f_setverdictFail(vl_charstringlistValue!={"0","3"}); |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdxRef); |
| f_setverdictFail(vl_charstringlistValue!={"0","5"}); |
| |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdx); |
| f_setverdictFail(vl_statusLEDValue!={led_blue,"1"}); |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdxRef); |
| f_setverdictFail(vl_statusLEDValue!={led_black,"2"}); |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| |
| } |
| |
| function f_EPTF_Var_complexDoubleBufferedVariableTest_ProviderComponent(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT{ |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_setSyncInterval(0.4); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| //Create the provider variables |
| f_initVariables(); |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| log("Modify the values"); |
| f_EPTF_Var_setContent(v_intVarRefIdx,{intVal:=2}); |
| f_EPTF_Var_setContent(v_floatVarRefIdx,{floatVal:=2.0}); |
| f_EPTF_Var_setContent(v_boolVarRefIdx,{boolVal:=false}); |
| f_EPTF_Var_setContent(v_charstringVarRefIdx,{charstringVal:="2.0"}); |
| f_EPTF_Var_setContent(v_octetstringVarRefIdx,{octetstringVal:='02'O}); |
| f_EPTF_Var_setContent(v_hexstringVarRefIdx,{hexstringVal:='02'H}); |
| f_EPTF_Var_setContent(v_bitstringVarRefIdx,{bitstringVal:='11'B}); |
| f_EPTF_Var_setContent(v_integerlistVarRefIdx,{integerlistVal:={0,2}}); |
| f_EPTF_Var_setContent(v_floatlistVarRefIdx,{floatlistVal:={0.0,2.0}}); |
| f_EPTF_Var_setContent(v_charstringlistVarRefIdx,{charstringlistVal:={"0","2"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarRefIdx,{statusLEDVal:={led_black,"2"}}); |
| |
| f_EPTF_Var_setContent(v_intVarIdx,{intVal:=4}); |
| f_EPTF_Var_setContent(v_floatVarIdx,{floatVal:=4.0}); |
| f_EPTF_Var_setContent(v_boolVarIdx,{boolVal:=false}); |
| f_EPTF_Var_setContent(v_charstringVarIdx,{charstringVal:="4.0"}); |
| f_EPTF_Var_setContent(v_octetstringVarIdx,{octetstringVal:='04'O}); |
| f_EPTF_Var_setContent(v_hexstringVarIdx,{hexstringVal:='04'H}); |
| f_EPTF_Var_setContent(v_bitstringVarIdx,{bitstringVal:='1111'B}); |
| f_EPTF_Var_setContent(v_integerlistVarIdx,{integerlistVal:={0,4}}); |
| f_EPTF_Var_setContent(v_floatlistVarIdx,{floatlistVal:={0.0,4.0}}); |
| f_EPTF_Var_setContent(v_charstringlistVarIdx,{charstringlistVal:={"0","4"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarIdx,{statusLEDVal:={led_blue,"1"}}); |
| |
| log("Send the modification"); |
| f_EPTF_Var_refreshContent(v_intVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatVarRefIdx); |
| f_EPTF_Var_refreshContent(v_boolVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_octetstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_integerlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarRefIdx); |
| |
| f_EPTF_Var_refreshContent(v_intVarIdx); |
| f_EPTF_Var_refreshContent(v_floatVarIdx); |
| f_EPTF_Var_refreshContent(v_boolVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarIdx); |
| f_EPTF_Var_refreshContent(v_octetstringVarIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarIdx); |
| f_EPTF_Var_refreshContent(v_integerlistVarIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarIdx); |
| |
| f_EPTF_Var_setContent(v_intVarRefIdx,{intVal:=3}); |
| f_EPTF_Var_setContent(v_floatVarRefIdx,{floatVal:=3.0}); |
| f_EPTF_Var_setContent(v_boolVarRefIdx,{boolVal:=true}); |
| f_EPTF_Var_setContent(v_charstringVarRefIdx,{charstringVal:="3.0"}); |
| f_EPTF_Var_setContent(v_octetstringVarRefIdx,{octetstringVal:='03'O}); |
| f_EPTF_Var_setContent(v_hexstringVarRefIdx,{hexstringVal:='03'H}); |
| f_EPTF_Var_setContent(v_bitstringVarRefIdx,{bitstringVal:='10'B}); |
| f_EPTF_Var_setContent(v_integerlistVarRefIdx,{integerlistVal:={0,3}}); |
| f_EPTF_Var_setContent(v_floatlistVarRefIdx,{floatlistVal:={0.0,3.0}}); |
| f_EPTF_Var_setContent(v_charstringlistVarRefIdx,{charstringlistVal:={"0","3"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarRefIdx,{statusLEDVal:={led_blue,"1"}}); |
| |
| f_EPTF_Var_setContent(v_intVarIdx,{intVal:=5}); |
| f_EPTF_Var_setContent(v_floatVarIdx,{floatVal:=5.0}); |
| f_EPTF_Var_setContent(v_boolVarIdx,{boolVal:=true}); |
| f_EPTF_Var_setContent(v_charstringVarIdx,{charstringVal:="5.0"}); |
| f_EPTF_Var_setContent(v_octetstringVarIdx,{octetstringVal:='05'O}); |
| f_EPTF_Var_setContent(v_hexstringVarIdx,{hexstringVal:='05'H}); |
| f_EPTF_Var_setContent(v_bitstringVarIdx,{bitstringVal:='11111'B}); |
| f_EPTF_Var_setContent(v_integerlistVarIdx,{integerlistVal:={0,5}}); |
| f_EPTF_Var_setContent(v_floatlistVarIdx,{floatlistVal:={0.0,5.0}}); |
| f_EPTF_Var_setContent(v_charstringlistVarIdx,{charstringlistVal:={"0","5"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarIdx,{statusLEDVal:={led_black,"2"}}); |
| |
| log("Send the modification"); |
| f_EPTF_Var_refreshContent(v_intVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatVarRefIdx); |
| f_EPTF_Var_refreshContent(v_boolVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_octetstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_integerlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarRefIdx); |
| |
| f_EPTF_Var_refreshContent(v_intVarIdx); |
| f_EPTF_Var_refreshContent(v_floatVarIdx); |
| f_EPTF_Var_refreshContent(v_boolVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarIdx); |
| f_EPTF_Var_refreshContent(v_octetstringVarIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarIdx); |
| f_EPTF_Var_refreshContent(v_integerlistVarIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarIdx); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| |
| } |
| |
| function f_EPTF_Var_complexDoubleBufferedVariableTest_SubscriberComponent1(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT{ |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_setSyncInterval(0.4); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| //Subscribe to the variables on the provider component |
| f_subscribeVariables(pl_parents,timeLine); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort2(true,pl_parents[1]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort2.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| f_sendstatusPort2(true,pl_parents[1]); |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| |
| } |
| |
| function f_EPTF_Var_complexDoubleBufferedVariableTest_SubscriberComponent2(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT{ |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"intVarRef",timeLine, v_remoteIntSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"floatVarRef",timeLine, v_remoteFloatSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"boolVarRef",timeLine, v_remoteBoolSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"charstringVarRef",timeLine, v_remoteCharstringSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"octetstringVarRef",timeLine, v_remoteOctetstringSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"hexstringVarRef",timeLine, v_remoteHexstringSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"bitstringVarRef",timeLine, v_remoteBitstringSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"integerlistVarRef",timeLine, v_remoteIntegerlistSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"floatlistVarRef",timeLine, v_remoteFloatlistSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"charstringlistVarRef",timeLine, v_remoteCharstringlistSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemote(pl_parents[0],"test1."&"statusLEDVarRef",timeLine, v_remoteStatusLEDSubscrIdx); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET -------"); |
| |
| f_EPTF_Var_subscribeRemoteIntRef(v_intVar,pl_parents[0],"test1."&"intVar",timeLine, v_remoteIntSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteFloatRef(v_floatVar,pl_parents[0],"test1."&"floatVar",timeLine, v_remoteFloatSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteBoolRef(v_boolVar,pl_parents[0],"test1."&"boolVar",timeLine, v_remoteBoolSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteCharstringRef(v_charstringVar,pl_parents[0],"test1."&"charstringVar",timeLine, v_remoteCharstringSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteOctetstringRef(v_octetstringVar,pl_parents[0],"test1."&"octetstringVar",timeLine, v_remoteOctetstringSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteHexstringRef(v_hexstringVar,pl_parents[0],"test1."&"hexstringVar",timeLine, v_remoteHexstringSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteBitstringRef(v_bitstringVar,pl_parents[0],"test1."&"bitstringVar",timeLine, v_remoteBitstringSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteIntegerlistRef(v_integerlistVar,pl_parents[0],"test1."&"integerlistVar",timeLine, v_remoteIntegerlistSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteFloatlistRef(v_floatlistVar,pl_parents[0],"test1."&"floatlistVar",timeLine, v_remoteFloatlistSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteCharstringlistRef(v_charstringlistVar,pl_parents[0],"test1."&"charstringlistVar",timeLine, v_remoteCharstringlistSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| f_EPTF_Var_subscribeRemoteStatusLEDValRef(v_statusLEDVar,pl_parents[0],"test1."&"statusLEDVar",timeLine, v_remoteStatusLEDSubscrIdxRef,""); |
| f_EPTF_Var_CT_LogAll("----- REMOTE PROVIDER SET FOR REF -------"); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| log("Get the modified values"); |
| var integer vl_intValue; |
| var float vl_floatValue; |
| var boolean vl_boolValue; |
| var charstring vl_charstringValue; |
| var octetstring vl_octetstringValue; |
| var hexstring vl_hexstringValue; |
| var bitstring vl_bitstringValue; |
| var EPTF_IntegerList vl_integerlistValue; |
| var EPTF_FloatList vl_floatlistValue; |
| var EPTF_CharstringList vl_charstringlistValue; |
| var EPTF_StatusLED vl_statusLEDValue; |
| |
| |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdx); |
| f_setverdictFail(vl_intValue!=3); |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdxRef); |
| f_setverdictFail(vl_intValue!=5); |
| |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdx); |
| f_setverdictFail(vl_floatValue!=3.0); |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdxRef); |
| f_setverdictFail(vl_floatValue!=5.0); |
| |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdx); |
| f_setverdictFail(vl_boolValue!=true); |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdxRef); |
| f_setverdictFail(vl_boolValue!=true); |
| |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdx); |
| f_setverdictFail(vl_charstringValue!="3.0"); |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdxRef); |
| f_setverdictFail(vl_charstringValue!="5.0"); |
| |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdx); |
| f_setverdictFail(vl_octetstringValue!='03'O); |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdxRef); |
| f_setverdictFail(vl_octetstringValue!='05'O); |
| |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdx); |
| f_setverdictFail(vl_hexstringValue!='03'H); |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdxRef); |
| f_setverdictFail(vl_hexstringValue!='05'H); |
| |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdx); |
| f_setverdictFail(vl_bitstringValue!='10'B); |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdxRef); |
| f_setverdictFail(vl_bitstringValue!='11111'B); |
| |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdx); |
| f_setverdictFail(vl_integerlistValue!={0,3}); |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdxRef); |
| f_setverdictFail(vl_integerlistValue!={0,5}); |
| |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdx); |
| f_setverdictFail(vl_floatlistValue!={0.0,3.0}); |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdxRef); |
| f_setverdictFail(vl_floatlistValue!={0.0,5.0}); |
| |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdx); |
| f_setverdictFail(vl_charstringlistValue!={"0","3"}); |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdxRef); |
| f_setverdictFail(vl_charstringlistValue!={"0","5"}); |
| |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdx); |
| f_setverdictFail(vl_statusLEDValue!={led_blue,"1"}); |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdxRef); |
| f_setverdictFail(vl_statusLEDValue!={led_black,"2"}); |
| |
| var EPTF_Var_TimeLine vl_timeLine; |
| f_EPTF_Var_getTimeLine(v_remoteIntSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteIntSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteFloatSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteFloatSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteBoolSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteBoolSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteCharstringSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteCharstringSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteOctetstringSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteOctetstringSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteHexstringSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteHexstringSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteBitstringSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteBitstringSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteIntegerlistSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteIntegerlistSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteFloatlistSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteFloatlistSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteCharstringlistSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteCharstringlistSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteStatusLEDSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteStatusLEDSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| |
| } |
| |
| |
| function f_EPTF_Var_complexParalelAdjustTest_ProviderComponent(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT |
| { |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| //Create the provider variables |
| f_initVariables(); |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| f_sendstatusPort2(true,pl_parents[1]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort2.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| f_sendstatusPort2(true,pl_parents[1]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort2.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_complexParalelAdjustTest_SubscriberComponent1(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT |
| { |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| //Subscribe to the variables on the provider component |
| f_subscribeVariables(pl_parents,realtime); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| //Adjust the value of the variables |
| f_EPTF_Var_adjustContent(v_remoteIntSubscrIdx,{intVal:=2}); |
| f_EPTF_Var_adjustContent(v_remoteFloatSubscrIdx,{floatVal:=2.0}); |
| f_EPTF_Var_adjustContent(v_remoteBoolSubscrIdx,{boolVal:=false}); |
| f_EPTF_Var_adjustContent(v_remoteCharstringSubscrIdx,{charstringVal:="2.0"}); |
| f_EPTF_Var_adjustContent(v_remoteOctetstringSubscrIdx,{octetstringVal:='02'O}); |
| f_EPTF_Var_adjustContent(v_remoteHexstringSubscrIdx,{hexstringVal:='02'H}); |
| f_EPTF_Var_adjustContent(v_remoteBitstringSubscrIdx,{bitstringVal:='11'B}); |
| f_EPTF_Var_adjustContent(v_remoteIntegerlistSubscrIdx,{integerlistVal:={0,2}}); |
| f_EPTF_Var_adjustContent(v_remoteFloatlistSubscrIdx,{floatlistVal:={0.0,2.0}}); |
| f_EPTF_Var_adjustContent(v_remoteCharstringlistSubscrIdx,{charstringlistVal:={"0","2"}}); |
| f_EPTF_Var_adjustContent(v_remoteStatusLEDSubscrIdx,{statusLEDVal:={led_black,"2"}}); |
| |
| f_EPTF_Var_adjustContent(v_remoteIntSubscrIdxRef,{intVal:=3}); |
| f_EPTF_Var_adjustContent(v_remoteFloatSubscrIdxRef,{floatVal:=3.0}); |
| f_EPTF_Var_adjustContent(v_remoteBoolSubscrIdxRef,{boolVal:=true}); |
| f_EPTF_Var_adjustContent(v_remoteCharstringSubscrIdxRef,{charstringVal:="3.0"}); |
| f_EPTF_Var_adjustContent(v_remoteOctetstringSubscrIdxRef,{octetstringVal:='03'O}); |
| f_EPTF_Var_adjustContent(v_remoteHexstringSubscrIdxRef,{hexstringVal:='03'H}); |
| f_EPTF_Var_adjustContent(v_remoteBitstringSubscrIdxRef,{bitstringVal:='111'B}); |
| f_EPTF_Var_adjustContent(v_remoteIntegerlistSubscrIdxRef,{integerlistVal:={0,3}}); |
| f_EPTF_Var_adjustContent(v_remoteFloatlistSubscrIdxRef,{floatlistVal:={0.0,3.0}}); |
| f_EPTF_Var_adjustContent(v_remoteCharstringlistSubscrIdxRef,{charstringlistVal:={"0","3"}}); |
| f_EPTF_Var_adjustContent(v_remoteStatusLEDSubscrIdxRef,{statusLEDVal:={led_blue,"1"}}); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_complexParalelAdjustTest_SubscriberComponent2(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT |
| { |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| //Subscribe to the variables on the provider component |
| f_subscribeVariables(pl_parents,realtime); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| var integer vl_intValue; |
| var float vl_floatValue; |
| var boolean vl_boolValue; |
| var charstring vl_charstringValue; |
| var octetstring vl_octetstringValue; |
| var hexstring vl_hexstringValue; |
| var bitstring vl_bitstringValue; |
| var EPTF_IntegerList vl_integerlistValue; |
| var EPTF_FloatList vl_floatlistValue; |
| var EPTF_CharstringList vl_charstringlistValue; |
| var EPTF_StatusLED vl_statusLEDValue; |
| |
| //Get and Check the values of the unsubscribed variables |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdx); |
| f_setverdictFail(vl_intValue!=2); |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdxRef); |
| f_setverdictFail(vl_intValue!=3); |
| |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdx); |
| f_setverdictFail(vl_floatValue!=2.0); |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdxRef); |
| f_setverdictFail(vl_floatValue!=3.0); |
| |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdx); |
| f_setverdictFail(vl_boolValue!=false); |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdxRef); |
| f_setverdictFail(vl_boolValue!=true); |
| |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdx); |
| f_setverdictFail(vl_charstringValue!="2.0"); |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdxRef); |
| f_setverdictFail(vl_charstringValue!="3.0"); |
| |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdx); |
| f_setverdictFail(vl_octetstringValue!='02'O); |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdxRef); |
| f_setverdictFail(vl_octetstringValue!='03'O); |
| |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdx); |
| f_setverdictFail(vl_hexstringValue!='02'H); |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdxRef); |
| f_setverdictFail(vl_hexstringValue!='03'H); |
| |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdx); |
| f_setverdictFail(vl_bitstringValue!='11'B); |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdxRef); |
| f_setverdictFail(vl_bitstringValue!='111'B); |
| |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdx); |
| f_setverdictFail(vl_integerlistValue!={0,2}); |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdxRef); |
| f_setverdictFail(vl_integerlistValue!={0,3}); |
| |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdx); |
| f_setverdictFail(vl_floatlistValue!={0.0,2.0}); |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdxRef); |
| f_setverdictFail(vl_floatlistValue!={0.0,3.0}); |
| |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdx); |
| f_setverdictFail(vl_charstringlistValue!={"0","2"}); |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdxRef); |
| f_setverdictFail(vl_charstringlistValue!={"0","3"}); |
| |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdx); |
| f_setverdictFail(vl_statusLEDValue!={led_black,"2"}); |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdxRef); |
| f_setverdictFail(vl_statusLEDValue!={led_blue,"1"}); |
| |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_complexParalelSubscribeTest_ProviderComponent(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT |
| { |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| //Create the provider variables |
| f_initVariables(); |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| f_sendstatusPort2(true,pl_parents[1]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort2.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| log("Modify the values"); |
| f_EPTF_Var_setContent(v_intVarRefIdx,{intVal:=2}); |
| f_EPTF_Var_setContent(v_floatVarRefIdx,{floatVal:=2.0}); |
| f_EPTF_Var_setContent(v_boolVarRefIdx,{boolVal:=false}); |
| f_EPTF_Var_setContent(v_charstringVarRefIdx,{charstringVal:="2.0"}); |
| f_EPTF_Var_setContent(v_octetstringVarRefIdx,{octetstringVal:='02'O}); |
| f_EPTF_Var_setContent(v_hexstringVarRefIdx,{hexstringVal:='02'H}); |
| f_EPTF_Var_setContent(v_bitstringVarRefIdx,{bitstringVal:='11'B}); |
| f_EPTF_Var_setContent(v_integerlistVarRefIdx,{integerlistVal:={0,2}}); |
| f_EPTF_Var_setContent(v_floatlistVarRefIdx,{floatlistVal:={0.0,2.0}}); |
| f_EPTF_Var_setContent(v_charstringlistVarRefIdx,{charstringlistVal:={"0","2"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarRefIdx,{statusLEDVal:={led_black,"2"}}); |
| |
| f_EPTF_Var_setContent(v_intVarIdx,{intVal:=3}); |
| f_EPTF_Var_setContent(v_floatVarIdx,{floatVal:=3.0}); |
| f_EPTF_Var_setContent(v_boolVarIdx,{boolVal:=true}); |
| f_EPTF_Var_setContent(v_charstringVarIdx,{charstringVal:="3.0"}); |
| f_EPTF_Var_setContent(v_octetstringVarIdx,{octetstringVal:='03'O}); |
| f_EPTF_Var_setContent(v_hexstringVarIdx,{hexstringVal:='03'H}); |
| f_EPTF_Var_setContent(v_bitstringVarIdx,{bitstringVal:='111'B}); |
| f_EPTF_Var_setContent(v_integerlistVarIdx,{integerlistVal:={0,3}}); |
| f_EPTF_Var_setContent(v_floatlistVarIdx,{floatlistVal:={0.0,3.0}}); |
| f_EPTF_Var_setContent(v_charstringlistVarIdx,{charstringlistVal:={"0","3"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarIdx,{statusLEDVal:={led_blue,"1"}}); |
| |
| log("Send the modification"); |
| f_EPTF_Var_refreshContent(v_intVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatVarRefIdx); |
| f_EPTF_Var_refreshContent(v_boolVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_octetstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_integerlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarRefIdx); |
| |
| f_EPTF_Var_refreshContent(v_intVarIdx); |
| f_EPTF_Var_refreshContent(v_floatVarIdx); |
| f_EPTF_Var_refreshContent(v_boolVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarIdx); |
| f_EPTF_Var_refreshContent(v_octetstringVarIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarIdx); |
| f_EPTF_Var_refreshContent(v_integerlistVarIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarIdx); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| f_sendstatusPort2(true,pl_parents[1]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort2.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_complexParalelSubscribeTest_SubscriberComponent1(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT |
| { |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| //Subscribe to the variables on the provider component |
| f_subscribeVariables(pl_parents,realtime); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| var integer vl_intValue; |
| var float vl_floatValue; |
| var boolean vl_boolValue; |
| var charstring vl_charstringValue; |
| var octetstring vl_octetstringValue; |
| var hexstring vl_hexstringValue; |
| var bitstring vl_bitstringValue; |
| var EPTF_IntegerList vl_integerlistValue; |
| var EPTF_FloatList vl_floatlistValue; |
| var EPTF_CharstringList vl_charstringlistValue; |
| var EPTF_StatusLED vl_statusLEDValue; |
| |
| //Get and Check the values of the unsubscribed variables |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdx); |
| f_setverdictFail(vl_intValue!=2); |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdxRef); |
| f_setverdictFail(vl_intValue!=3); |
| |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdx); |
| f_setverdictFail(vl_floatValue!=2.0); |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdxRef); |
| f_setverdictFail(vl_floatValue!=3.0); |
| |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdx); |
| f_setverdictFail(vl_boolValue!=false); |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdxRef); |
| f_setverdictFail(vl_boolValue!=true); |
| |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdx); |
| f_setverdictFail(vl_charstringValue!="2.0"); |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdxRef); |
| f_setverdictFail(vl_charstringValue!="3.0"); |
| |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdx); |
| f_setverdictFail(vl_octetstringValue!='02'O); |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdxRef); |
| f_setverdictFail(vl_octetstringValue!='03'O); |
| |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdx); |
| f_setverdictFail(vl_hexstringValue!='02'H); |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdxRef); |
| f_setverdictFail(vl_hexstringValue!='03'H); |
| |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdx); |
| f_setverdictFail(vl_bitstringValue!='11'B); |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdxRef); |
| f_setverdictFail(vl_bitstringValue!='111'B); |
| |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdx); |
| f_setverdictFail(vl_integerlistValue!={0,2}); |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdxRef); |
| f_setverdictFail(vl_integerlistValue!={0,3}); |
| |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdx); |
| f_setverdictFail(vl_floatlistValue!={0.0,2.0}); |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdxRef); |
| f_setverdictFail(vl_floatlistValue!={0.0,3.0}); |
| |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdx); |
| f_setverdictFail(vl_charstringlistValue!={"0","2"}); |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdxRef); |
| f_setverdictFail(vl_charstringlistValue!={"0","3"}); |
| |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdx); |
| f_setverdictFail(vl_statusLEDValue!={led_black,"2"}); |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdxRef); |
| f_setverdictFail(vl_statusLEDValue!={led_blue,"1"}); |
| |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_complexParalelSubscribeTest_SubscriberComponent2(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT |
| { |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| //Subscribe to the variables on the provider component |
| f_subscribeVariables(pl_parents,realtime); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| var integer vl_intValue; |
| var float vl_floatValue; |
| var boolean vl_boolValue; |
| var charstring vl_charstringValue; |
| var octetstring vl_octetstringValue; |
| var hexstring vl_hexstringValue; |
| var bitstring vl_bitstringValue; |
| var EPTF_IntegerList vl_integerlistValue; |
| var EPTF_FloatList vl_floatlistValue; |
| var EPTF_CharstringList vl_charstringlistValue; |
| var EPTF_StatusLED vl_statusLEDValue; |
| |
| //Get and Check the values of the unsubscribed variables |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdx); |
| f_setverdictFail(vl_intValue!=2); |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdxRef); |
| f_setverdictFail(vl_intValue!=3); |
| |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdx); |
| f_setverdictFail(vl_floatValue!=2.0); |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdxRef); |
| f_setverdictFail(vl_floatValue!=3.0); |
| |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdx); |
| f_setverdictFail(vl_boolValue!=false); |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdxRef); |
| f_setverdictFail(vl_boolValue!=true); |
| |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdx); |
| f_setverdictFail(vl_charstringValue!="2.0"); |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdxRef); |
| f_setverdictFail(vl_charstringValue!="3.0"); |
| |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdx); |
| f_setverdictFail(vl_octetstringValue!='02'O); |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdxRef); |
| f_setverdictFail(vl_octetstringValue!='03'O); |
| |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdx); |
| f_setverdictFail(vl_hexstringValue!='02'H); |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdxRef); |
| f_setverdictFail(vl_hexstringValue!='03'H); |
| |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdx); |
| f_setverdictFail(vl_bitstringValue!='11'B); |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdxRef); |
| f_setverdictFail(vl_bitstringValue!='111'B); |
| |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdx); |
| f_setverdictFail(vl_integerlistValue!={0,2}); |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdxRef); |
| f_setverdictFail(vl_integerlistValue!={0,3}); |
| |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdx); |
| f_setverdictFail(vl_floatlistValue!={0.0,2.0}); |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdxRef); |
| f_setverdictFail(vl_floatlistValue!={0.0,3.0}); |
| |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdx); |
| f_setverdictFail(vl_charstringlistValue!={"0","2"}); |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdxRef); |
| f_setverdictFail(vl_charstringlistValue!={"0","3"}); |
| |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdx); |
| f_setverdictFail(vl_statusLEDValue!={led_black,"2"}); |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdxRef); |
| f_setverdictFail(vl_statusLEDValue!={led_blue,"1"}); |
| |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_complexParalelUnsubscribeTest_ProviderComponent(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT |
| { |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| //Create the provider variables |
| f_initVariables(); |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| f_sendstatusPort2(true,pl_parents[1]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort2.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| log("Modify the values"); |
| f_EPTF_Var_setContent(v_intVarRefIdx,{intVal:=2}); |
| f_EPTF_Var_setContent(v_floatVarRefIdx,{floatVal:=2.0}); |
| f_EPTF_Var_setContent(v_boolVarRefIdx,{boolVal:=false}); |
| f_EPTF_Var_setContent(v_charstringVarRefIdx,{charstringVal:="2.0"}); |
| f_EPTF_Var_setContent(v_octetstringVarRefIdx,{octetstringVal:='02'O}); |
| f_EPTF_Var_setContent(v_hexstringVarRefIdx,{hexstringVal:='02'H}); |
| f_EPTF_Var_setContent(v_bitstringVarRefIdx,{bitstringVal:='11'B}); |
| f_EPTF_Var_setContent(v_integerlistVarRefIdx,{integerlistVal:={0,2}}); |
| f_EPTF_Var_setContent(v_floatlistVarRefIdx,{floatlistVal:={0.0,2.0}}); |
| f_EPTF_Var_setContent(v_charstringlistVarRefIdx,{charstringlistVal:={"0","2"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarRefIdx,{statusLEDVal:={led_black,"2"}}); |
| |
| f_EPTF_Var_setContent(v_intVarIdx,{intVal:=3}); |
| f_EPTF_Var_setContent(v_floatVarIdx,{floatVal:=3.0}); |
| f_EPTF_Var_setContent(v_boolVarIdx,{boolVal:=true}); |
| f_EPTF_Var_setContent(v_charstringVarIdx,{charstringVal:="3.0"}); |
| f_EPTF_Var_setContent(v_octetstringVarIdx,{octetstringVal:='03'O}); |
| f_EPTF_Var_setContent(v_hexstringVarIdx,{hexstringVal:='03'H}); |
| f_EPTF_Var_setContent(v_bitstringVarIdx,{bitstringVal:='111'B}); |
| f_EPTF_Var_setContent(v_integerlistVarIdx,{integerlistVal:={0,3}}); |
| f_EPTF_Var_setContent(v_floatlistVarIdx,{floatlistVal:={0.0,3.0}}); |
| f_EPTF_Var_setContent(v_charstringlistVarIdx,{charstringlistVal:={"0","3"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarIdx,{statusLEDVal:={led_blue,"1"}}); |
| |
| log("Send the modification"); |
| f_EPTF_Var_refreshContent(v_intVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatVarRefIdx); |
| f_EPTF_Var_refreshContent(v_boolVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_octetstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_integerlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarRefIdx); |
| |
| f_EPTF_Var_refreshContent(v_intVarIdx); |
| f_EPTF_Var_refreshContent(v_floatVarIdx); |
| f_EPTF_Var_refreshContent(v_boolVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarIdx); |
| f_EPTF_Var_refreshContent(v_octetstringVarIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarIdx); |
| f_EPTF_Var_refreshContent(v_integerlistVarIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarIdx); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| f_sendstatusPort2(true,pl_parents[1]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort2.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| log("Modify the values"); |
| f_EPTF_Var_setContent(v_intVarRefIdx,{intVal:=4}); |
| f_EPTF_Var_setContent(v_floatVarRefIdx,{floatVal:=4.0}); |
| f_EPTF_Var_setContent(v_boolVarRefIdx,{boolVal:=true}); |
| f_EPTF_Var_setContent(v_charstringVarRefIdx,{charstringVal:="4.0"}); |
| f_EPTF_Var_setContent(v_octetstringVarRefIdx,{octetstringVal:='04'O}); |
| f_EPTF_Var_setContent(v_hexstringVarRefIdx,{hexstringVal:='04'H}); |
| f_EPTF_Var_setContent(v_bitstringVarRefIdx,{bitstringVal:='1111'B}); |
| f_EPTF_Var_setContent(v_integerlistVarRefIdx,{integerlistVal:={0,4}}); |
| f_EPTF_Var_setContent(v_floatlistVarRefIdx,{floatlistVal:={0.0,4.0}}); |
| f_EPTF_Var_setContent(v_charstringlistVarRefIdx,{charstringlistVal:={"0","4"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarRefIdx,{statusLEDVal:={led_blue,"1"}}); |
| |
| f_EPTF_Var_setContent(v_intVarIdx,{intVal:=5}); |
| f_EPTF_Var_setContent(v_floatVarIdx,{floatVal:=5.0}); |
| f_EPTF_Var_setContent(v_boolVarIdx,{boolVal:=false}); |
| f_EPTF_Var_setContent(v_charstringVarIdx,{charstringVal:="5.0"}); |
| f_EPTF_Var_setContent(v_octetstringVarIdx,{octetstringVal:='05'O}); |
| f_EPTF_Var_setContent(v_hexstringVarIdx,{hexstringVal:='05'H}); |
| f_EPTF_Var_setContent(v_bitstringVarIdx,{bitstringVal:='11111'B}); |
| f_EPTF_Var_setContent(v_integerlistVarIdx,{integerlistVal:={0,5}}); |
| f_EPTF_Var_setContent(v_floatlistVarIdx,{floatlistVal:={0.0,5.0}}); |
| f_EPTF_Var_setContent(v_charstringlistVarIdx,{charstringlistVal:={"0","5"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarIdx,{statusLEDVal:={led_black,"2"}}); |
| |
| log("Send the modification"); |
| f_EPTF_Var_refreshContent(v_intVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatVarRefIdx); |
| f_EPTF_Var_refreshContent(v_boolVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_octetstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_integerlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarRefIdx); |
| |
| f_EPTF_Var_refreshContent(v_intVarIdx); |
| f_EPTF_Var_refreshContent(v_floatVarIdx); |
| f_EPTF_Var_refreshContent(v_boolVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarIdx); |
| f_EPTF_Var_refreshContent(v_octetstringVarIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarIdx); |
| f_EPTF_Var_refreshContent(v_integerlistVarIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarIdx); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| f_sendstatusPort2(true,pl_parents[1]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); } |
| } |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort2.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_complexParalelUnsubscribeTest_SubscriberComponent1(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT |
| { |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| //Subscribe to the variables on the provider component |
| f_subscribeVariables(pl_parents,realtime); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| var integer vl_intValue; |
| var float vl_floatValue; |
| var boolean vl_boolValue; |
| var charstring vl_charstringValue; |
| var octetstring vl_octetstringValue; |
| var hexstring vl_hexstringValue; |
| var bitstring vl_bitstringValue; |
| var EPTF_IntegerList vl_integerlistValue; |
| var EPTF_FloatList vl_floatlistValue; |
| var EPTF_CharstringList vl_charstringlistValue; |
| var EPTF_StatusLED vl_statusLEDValue; |
| |
| //Get and Check the values of the unsubscribed variables |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdx); |
| f_setverdictFail(vl_intValue!=2); |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdxRef); |
| f_setverdictFail(vl_intValue!=3); |
| |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdx); |
| f_setverdictFail(vl_floatValue!=2.0); |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdxRef); |
| f_setverdictFail(vl_floatValue!=3.0); |
| |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdx); |
| f_setverdictFail(vl_boolValue!=false); |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdxRef); |
| f_setverdictFail(vl_boolValue!=true); |
| |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdx); |
| f_setverdictFail(vl_charstringValue!="2.0"); |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdxRef); |
| f_setverdictFail(vl_charstringValue!="3.0"); |
| |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdx); |
| f_setverdictFail(vl_octetstringValue!='02'O); |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdxRef); |
| f_setverdictFail(vl_octetstringValue!='03'O); |
| |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdx); |
| f_setverdictFail(vl_hexstringValue!='02'H); |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdxRef); |
| f_setverdictFail(vl_hexstringValue!='03'H); |
| |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdx); |
| f_setverdictFail(vl_bitstringValue!='11'B); |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdxRef); |
| f_setverdictFail(vl_bitstringValue!='111'B); |
| |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdx); |
| f_setverdictFail(vl_integerlistValue!={0,2}); |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdxRef); |
| f_setverdictFail(vl_integerlistValue!={0,3}); |
| |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdx); |
| f_setverdictFail(vl_floatlistValue!={0.0,2.0}); |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdxRef); |
| f_setverdictFail(vl_floatlistValue!={0.0,3.0}); |
| |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdx); |
| f_setverdictFail(vl_charstringlistValue!={"0","2"}); |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdxRef); |
| f_setverdictFail(vl_charstringlistValue!={"0","3"}); |
| |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdx); |
| f_setverdictFail(vl_statusLEDValue!={led_black,"2"}); |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdxRef); |
| f_setverdictFail(vl_statusLEDValue!={led_blue,"1"}); |
| |
| //Unsubscribe from the variables on the first component |
| f_EPTF_Var_unsubscribe(v_remoteIntSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteFloatSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteBoolSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteCharstringSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteOctetstringSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteHexstringSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteBitstringSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteIntegerlistSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteFloatlistSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteCharstringlistSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteStatusLEDSubscrIdx); |
| |
| f_EPTF_Var_unsubscribe(v_remoteIntSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteFloatSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteBoolSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteCharstringSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteOctetstringSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteHexstringSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteBitstringSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteIntegerlistSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteFloatlistSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteCharstringlistSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteStatusLEDSubscrIdxRef); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| //Get and Check the values of the unsubscribed variables |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdx); |
| f_setverdictFail(vl_intValue!=2); |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdxRef); |
| f_setverdictFail(vl_intValue!=3); |
| |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdx); |
| f_setverdictFail(vl_floatValue!=2.0); |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdxRef); |
| f_setverdictFail(vl_floatValue!=3.0); |
| |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdx); |
| f_setverdictFail(vl_boolValue!=false); |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdxRef); |
| f_setverdictFail(vl_boolValue!=true); |
| |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdx); |
| f_setverdictFail(vl_charstringValue!="2.0"); |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdxRef); |
| f_setverdictFail(vl_charstringValue!="3.0"); |
| |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdx); |
| f_setverdictFail(vl_octetstringValue!='02'O); |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdxRef); |
| f_setverdictFail(vl_octetstringValue!='03'O); |
| |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdx); |
| f_setverdictFail(vl_hexstringValue!='02'H); |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdxRef); |
| f_setverdictFail(vl_hexstringValue!='03'H); |
| |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdx); |
| f_setverdictFail(vl_bitstringValue!='11'B); |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdxRef); |
| f_setverdictFail(vl_bitstringValue!='111'B); |
| |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdx); |
| f_setverdictFail(vl_integerlistValue!={0,2}); |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdxRef); |
| f_setverdictFail(vl_integerlistValue!={0,3}); |
| |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdx); |
| f_setverdictFail(vl_floatlistValue!={0.0,2.0}); |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdxRef); |
| f_setverdictFail(vl_floatlistValue!={0.0,3.0}); |
| |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdx); |
| f_setverdictFail(vl_charstringlistValue!={"0","2"}); |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdxRef); |
| f_setverdictFail(vl_charstringlistValue!={"0","3"}); |
| |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdx); |
| f_setverdictFail(vl_statusLEDValue!={led_black,"2"}); |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdxRef); |
| f_setverdictFail(vl_statusLEDValue!={led_blue,"1"}); |
| |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| |
| function f_EPTF_Var_complexParalelUnsubscribeTest_SubscriberComponent2(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT |
| { |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| //Subscribe to the variables on the provider component |
| f_subscribeVariables(pl_parents,realtime); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| //Unsubscribe from the variables on the first component |
| f_EPTF_Var_unsubscribe(v_remoteIntSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteFloatSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteBoolSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteCharstringSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteOctetstringSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteHexstringSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteBitstringSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteIntegerlistSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteFloatlistSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteCharstringlistSubscrIdx); |
| f_EPTF_Var_unsubscribe(v_remoteStatusLEDSubscrIdx); |
| |
| f_EPTF_Var_unsubscribe(v_remoteIntSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteFloatSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteBoolSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteCharstringSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteOctetstringSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteHexstringSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteBitstringSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteIntegerlistSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteFloatlistSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteCharstringlistSubscrIdxRef); |
| f_EPTF_Var_unsubscribe(v_remoteStatusLEDSubscrIdxRef); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| var integer vl_intValue; |
| var float vl_floatValue; |
| var boolean vl_boolValue; |
| var charstring vl_charstringValue; |
| var octetstring vl_octetstringValue; |
| var hexstring vl_hexstringValue; |
| var bitstring vl_bitstringValue; |
| var EPTF_IntegerList vl_integerlistValue; |
| var EPTF_FloatList vl_floatlistValue; |
| var EPTF_CharstringList vl_charstringlistValue; |
| var EPTF_StatusLED vl_statusLEDValue; |
| |
| //Get and Check the values of the unsubscribed variables |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdx); |
| f_setverdictFail(vl_intValue!=1); |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdxRef); |
| f_setverdictFail(vl_intValue!=1); |
| |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdx); |
| f_setverdictFail(vl_floatValue!=1.0); |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdxRef); |
| f_setverdictFail(vl_floatValue!=1.0); |
| |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdx); |
| f_setverdictFail(vl_boolValue!=true); |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdxRef); |
| f_setverdictFail(vl_boolValue!=true); |
| |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdx); |
| f_setverdictFail(vl_charstringValue!="1.0"); |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdxRef); |
| f_setverdictFail(vl_charstringValue!="1.0"); |
| |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdx); |
| f_setverdictFail(vl_octetstringValue!='01'O); |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdxRef); |
| f_setverdictFail(vl_octetstringValue!='01'O); |
| |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdx); |
| f_setverdictFail(vl_hexstringValue!='01'H); |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdxRef); |
| f_setverdictFail(vl_hexstringValue!='01'H); |
| |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdx); |
| f_setverdictFail(vl_bitstringValue!='01'B); |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdxRef); |
| f_setverdictFail(vl_bitstringValue!='01'B); |
| |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdx); |
| f_setverdictFail(vl_integerlistValue!={0,1}); |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdxRef); |
| f_setverdictFail(vl_integerlistValue!={0,1}); |
| |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdx); |
| f_setverdictFail(vl_floatlistValue!={0.0,1.0}); |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdxRef); |
| f_setverdictFail(vl_floatlistValue!={0.0,1.0}); |
| |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdx); |
| f_setverdictFail(vl_charstringlistValue!={"0","1"}); |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdxRef); |
| f_setverdictFail(vl_charstringlistValue!={"0","1"}); |
| |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdx); |
| f_setverdictFail(vl_statusLEDValue!={led_blue,"1"}); |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdxRef); |
| f_setverdictFail(vl_statusLEDValue!={led_blue,"1"}); |
| |
| //Re-Subscribe |
| f_EPTF_Var_resubscribeRemote(pl_parents[0],"intVarRef",realtime, v_remoteIntSubscrIdx); |
| |
| f_EPTF_Var_resubscribeRemote(pl_parents[0],"floatVarRef",realtime, v_remoteFloatSubscrIdx); |
| |
| f_EPTF_Var_resubscribeRemote(pl_parents[0],"boolVarRef",realtime, v_remoteBoolSubscrIdx); |
| |
| f_EPTF_Var_resubscribeRemote(pl_parents[0],"charstringVarRef",realtime, v_remoteCharstringSubscrIdx); |
| |
| f_EPTF_Var_resubscribeRemote(pl_parents[0],"octetstringVarRef",realtime, v_remoteOctetstringSubscrIdx); |
| |
| f_EPTF_Var_resubscribeRemote(pl_parents[0],"hexstringVarRef",realtime, v_remoteHexstringSubscrIdx); |
| |
| f_EPTF_Var_resubscribeRemote(pl_parents[0],"bitstringVarRef",realtime, v_remoteBitstringSubscrIdx); |
| |
| f_EPTF_Var_resubscribeRemote(pl_parents[0],"integerlistVarRef",realtime, v_remoteIntegerlistSubscrIdx); |
| |
| f_EPTF_Var_resubscribeRemote(pl_parents[0],"floatlistVarRef",realtime, v_remoteFloatlistSubscrIdx); |
| |
| f_EPTF_Var_resubscribeRemote(pl_parents[0],"charstringlistVarRef",realtime, v_remoteCharstringlistSubscrIdx); |
| |
| f_EPTF_Var_resubscribeRemote(pl_parents[0],"statusLEDVarRef",realtime, v_remoteStatusLEDSubscrIdx); |
| |
| f_EPTF_Var_resubscribeRemote(pl_parents[0],"intVar",realtime, v_remoteIntSubscrIdxRef); |
| |
| f_EPTF_Var_resubscribeRemote(pl_parents[0],"floatVar",realtime, v_remoteFloatSubscrIdxRef); |
| |
| f_EPTF_Var_resubscribeRemote(pl_parents[0],"boolVar",realtime, v_remoteBoolSubscrIdxRef); |
| |
| f_EPTF_Var_resubscribeRemote(pl_parents[0],"charstringVar",realtime, v_remoteCharstringSubscrIdxRef); |
| |
| f_EPTF_Var_resubscribeRemote(pl_parents[0],"octetstringVar",realtime, v_remoteOctetstringSubscrIdxRef); |
| |
| f_EPTF_Var_resubscribeRemote(pl_parents[0],"hexstringVar",realtime, v_remoteHexstringSubscrIdxRef); |
| |
| f_EPTF_Var_resubscribeRemote(pl_parents[0],"bitstringVar",realtime, v_remoteBitstringSubscrIdxRef); |
| |
| f_EPTF_Var_resubscribeRemote(pl_parents[0],"integerlistVar",realtime, v_remoteIntegerlistSubscrIdxRef); |
| |
| f_EPTF_Var_resubscribeRemote(pl_parents[0],"floatlistVar",realtime, v_remoteFloatlistSubscrIdxRef); |
| |
| f_EPTF_Var_resubscribeRemote(pl_parents[0],"charstringlistVar",realtime, v_remoteCharstringlistSubscrIdxRef); |
| |
| f_EPTF_Var_resubscribeRemote(pl_parents[0],"statusLEDVar",realtime, v_remoteStatusLEDSubscrIdxRef); |
| |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| //Get and Check the values of the unsubscribed variables |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdx); |
| f_setverdictFail(vl_intValue!=4); |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdxRef); |
| f_setverdictFail(vl_intValue!=5); |
| |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdx); |
| f_setverdictFail(vl_floatValue!=4.0); |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdxRef); |
| f_setverdictFail(vl_floatValue!=5.0); |
| |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdx); |
| f_setverdictFail(vl_boolValue!=true); |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdxRef); |
| f_setverdictFail(vl_boolValue!=false); |
| |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdx); |
| f_setverdictFail(vl_charstringValue!="4.0"); |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdxRef); |
| f_setverdictFail(vl_charstringValue!="5.0"); |
| |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdx); |
| f_setverdictFail(vl_octetstringValue!='04'O); |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdxRef); |
| f_setverdictFail(vl_octetstringValue!='05'O); |
| |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdx); |
| f_setverdictFail(vl_hexstringValue!='04'H); |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdxRef); |
| f_setverdictFail(vl_hexstringValue!='05'H); |
| |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdx); |
| f_setverdictFail(vl_bitstringValue!='1111'B); |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdxRef); |
| f_setverdictFail(vl_bitstringValue!='11111'B); |
| |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdx); |
| f_setverdictFail(vl_integerlistValue!={0,4}); |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdxRef); |
| f_setverdictFail(vl_integerlistValue!={0,5}); |
| |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdx); |
| f_setverdictFail(vl_floatlistValue!={0.0,4.0}); |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdxRef); |
| f_setverdictFail(vl_floatlistValue!={0.0,5.0}); |
| |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdx); |
| f_setverdictFail(vl_charstringlistValue!={"0","4"}); |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdxRef); |
| f_setverdictFail(vl_charstringlistValue!={"0","5"}); |
| |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdx); |
| f_setverdictFail(vl_statusLEDValue!={led_blue,"1"}); |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdxRef); |
| f_setverdictFail(vl_statusLEDValue!={led_black,"2"}); |
| |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_complexParalelBufferedTest_ProviderComponent(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT |
| { |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_setSyncInterval(0.4); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| //Create the provider variables |
| f_initVariables(); |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| f_sendstatusPort2(true,pl_parents[1]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort2.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| |
| log("Modify the values"); |
| f_EPTF_Var_setContent(v_intVarRefIdx,{intVal:=2}); |
| f_EPTF_Var_setContent(v_floatVarRefIdx,{floatVal:=2.0}); |
| f_EPTF_Var_setContent(v_boolVarRefIdx,{boolVal:=false}); |
| f_EPTF_Var_setContent(v_charstringVarRefIdx,{charstringVal:="2.0"}); |
| f_EPTF_Var_setContent(v_octetstringVarRefIdx,{octetstringVal:='02'O}); |
| f_EPTF_Var_setContent(v_hexstringVarRefIdx,{hexstringVal:='02'H}); |
| f_EPTF_Var_setContent(v_bitstringVarRefIdx,{bitstringVal:='11'B}); |
| f_EPTF_Var_setContent(v_integerlistVarRefIdx,{integerlistVal:={0,2}}); |
| f_EPTF_Var_setContent(v_floatlistVarRefIdx,{floatlistVal:={0.0,2.0}}); |
| f_EPTF_Var_setContent(v_charstringlistVarRefIdx,{charstringlistVal:={"0","2"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarRefIdx,{statusLEDVal:={led_black,"2"}}); |
| |
| f_EPTF_Var_setContent(v_intVarIdx,{intVal:=4}); |
| f_EPTF_Var_setContent(v_floatVarIdx,{floatVal:=4.0}); |
| f_EPTF_Var_setContent(v_boolVarIdx,{boolVal:=true}); |
| f_EPTF_Var_setContent(v_charstringVarIdx,{charstringVal:="4.0"}); |
| f_EPTF_Var_setContent(v_octetstringVarIdx,{octetstringVal:='04'O}); |
| f_EPTF_Var_setContent(v_hexstringVarIdx,{hexstringVal:='04'H}); |
| f_EPTF_Var_setContent(v_bitstringVarIdx,{bitstringVal:='1111'B}); |
| f_EPTF_Var_setContent(v_integerlistVarIdx,{integerlistVal:={0,4}}); |
| f_EPTF_Var_setContent(v_floatlistVarIdx,{floatlistVal:={0.0,4.0}}); |
| f_EPTF_Var_setContent(v_charstringlistVarIdx,{charstringlistVal:={"0","4"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarIdx,{statusLEDVal:={led_blue,"1"}}); |
| |
| log("Send the modification"); |
| f_EPTF_Var_refreshContent(v_intVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatVarRefIdx); |
| f_EPTF_Var_refreshContent(v_boolVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_octetstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_integerlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarRefIdx); |
| |
| f_EPTF_Var_refreshContent(v_intVarIdx); |
| f_EPTF_Var_refreshContent(v_floatVarIdx); |
| f_EPTF_Var_refreshContent(v_boolVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarIdx); |
| f_EPTF_Var_refreshContent(v_octetstringVarIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarIdx); |
| f_EPTF_Var_refreshContent(v_integerlistVarIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarIdx); |
| |
| log("Modify the values"); |
| f_EPTF_Var_setContent(v_intVarRefIdx,{intVal:=3}); |
| f_EPTF_Var_setContent(v_floatVarRefIdx,{floatVal:=3.0}); |
| f_EPTF_Var_setContent(v_boolVarRefIdx,{boolVal:=true}); |
| f_EPTF_Var_setContent(v_charstringVarRefIdx,{charstringVal:="3.0"}); |
| f_EPTF_Var_setContent(v_octetstringVarRefIdx,{octetstringVal:='03'O}); |
| f_EPTF_Var_setContent(v_hexstringVarRefIdx,{hexstringVal:='03'H}); |
| f_EPTF_Var_setContent(v_bitstringVarRefIdx,{bitstringVal:='10'B}); |
| f_EPTF_Var_setContent(v_integerlistVarRefIdx,{integerlistVal:={0,3}}); |
| f_EPTF_Var_setContent(v_floatlistVarRefIdx,{floatlistVal:={0.0,3.0}}); |
| f_EPTF_Var_setContent(v_charstringlistVarRefIdx,{charstringlistVal:={"0","3"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarRefIdx,{statusLEDVal:={led_blue,"1"}}); |
| |
| f_EPTF_Var_setContent(v_intVarIdx,{intVal:=5}); |
| f_EPTF_Var_setContent(v_floatVarIdx,{floatVal:=5.0}); |
| f_EPTF_Var_setContent(v_boolVarIdx,{boolVal:=false}); |
| f_EPTF_Var_setContent(v_charstringVarIdx,{charstringVal:="5.0"}); |
| f_EPTF_Var_setContent(v_octetstringVarIdx,{octetstringVal:='05'O}); |
| f_EPTF_Var_setContent(v_hexstringVarIdx,{hexstringVal:='05'H}); |
| f_EPTF_Var_setContent(v_bitstringVarIdx,{bitstringVal:='11111'B}); |
| f_EPTF_Var_setContent(v_integerlistVarIdx,{integerlistVal:={0,5}}); |
| f_EPTF_Var_setContent(v_floatlistVarIdx,{floatlistVal:={0.0,5.0}}); |
| f_EPTF_Var_setContent(v_charstringlistVarIdx,{charstringlistVal:={"0","5"}}); |
| f_EPTF_Var_setContent(v_statusLEDVarIdx,{statusLEDVal:={led_black,"2"}}); |
| |
| log("Send the modification"); |
| f_EPTF_Var_refreshContent(v_intVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatVarRefIdx); |
| f_EPTF_Var_refreshContent(v_boolVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_octetstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarRefIdx); |
| f_EPTF_Var_refreshContent(v_integerlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarRefIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarRefIdx); |
| |
| f_EPTF_Var_refreshContent(v_intVarIdx); |
| f_EPTF_Var_refreshContent(v_floatVarIdx); |
| f_EPTF_Var_refreshContent(v_boolVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringVarIdx); |
| f_EPTF_Var_refreshContent(v_octetstringVarIdx); |
| f_EPTF_Var_refreshContent(v_hexstringVarIdx); |
| f_EPTF_Var_refreshContent(v_bitstringVarIdx); |
| f_EPTF_Var_refreshContent(v_integerlistVarIdx); |
| f_EPTF_Var_refreshContent(v_floatlistVarIdx); |
| f_EPTF_Var_refreshContent(v_charstringlistVarIdx); |
| f_EPTF_Var_refreshContent(v_statusLEDVarIdx); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| f_sendstatusPort2(true,pl_parents[1]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort2.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_complexParalelBufferedTest_SubscriberComponent1(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT |
| { |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| //Subscribe to the variables on the provider component |
| f_subscribeVariables(pl_parents,timeLine); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| log("Get the modified values"); |
| var integer vl_intValue; |
| var float vl_floatValue; |
| var boolean vl_boolValue; |
| var charstring vl_charstringValue; |
| var octetstring vl_octetstringValue; |
| var hexstring vl_hexstringValue; |
| var bitstring vl_bitstringValue; |
| var EPTF_IntegerList vl_integerlistValue; |
| var EPTF_FloatList vl_floatlistValue; |
| var EPTF_CharstringList vl_charstringlistValue; |
| var EPTF_StatusLED vl_statusLEDValue; |
| |
| |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdx); |
| f_setverdictFail(vl_intValue!=3); |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdxRef); |
| f_setverdictFail(vl_intValue!=5); |
| |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdx); |
| f_setverdictFail(vl_floatValue!=3.0); |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdxRef); |
| f_setverdictFail(vl_floatValue!=5.0); |
| |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdx); |
| f_setverdictFail(vl_boolValue!=true); |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdxRef); |
| f_setverdictFail(vl_boolValue!=false); |
| |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdx); |
| f_setverdictFail(vl_charstringValue!="3.0"); |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdxRef); |
| f_setverdictFail(vl_charstringValue!="5.0"); |
| |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdx); |
| f_setverdictFail(vl_octetstringValue!='03'O); |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdxRef); |
| f_setverdictFail(vl_octetstringValue!='05'O); |
| |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdx); |
| f_setverdictFail(vl_hexstringValue!='03'H); |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdxRef); |
| f_setverdictFail(vl_hexstringValue!='05'H); |
| |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdx); |
| f_setverdictFail(vl_bitstringValue!='10'B); |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdxRef); |
| f_setverdictFail(vl_bitstringValue!='11111'B); |
| |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdx); |
| f_setverdictFail(vl_integerlistValue!={0,3}); |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdxRef); |
| f_setverdictFail(vl_integerlistValue!={0,5}); |
| |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdx); |
| f_setverdictFail(vl_floatlistValue!={0.0,3.0}); |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdxRef); |
| f_setverdictFail(vl_floatlistValue!={0.0,5.0}); |
| |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdx); |
| f_setverdictFail(vl_charstringlistValue!={"0","3"}); |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdxRef); |
| f_setverdictFail(vl_charstringlistValue!={"0","5"}); |
| |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdx); |
| f_setverdictFail(vl_statusLEDValue!={led_blue,"1"}); |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdxRef); |
| f_setverdictFail(vl_statusLEDValue!={led_black,"2"}); |
| |
| var EPTF_Var_TimeLine vl_timeLine; |
| f_EPTF_Var_getTimeLine(v_remoteIntSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteIntSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteFloatSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteFloatSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteBoolSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteBoolSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteCharstringSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteCharstringSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteOctetstringSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteOctetstringSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteHexstringSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteHexstringSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteBitstringSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteBitstringSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteIntegerlistSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteIntegerlistSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteFloatlistSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteFloatlistSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteCharstringlistSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteCharstringlistSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteStatusLEDSubscrIdx, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| f_EPTF_Var_getTimeLine(v_remoteStatusLEDSubscrIdxRef, vl_timeLine); |
| f_setverdictFail(vl_timeLine.size!=2); |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_complexParalelBufferedTest_SubscriberComponent2(in charstring pl_selfName, in VariableTest_CT_List pl_parents) runs on VariableTest_CT |
| { |
| |
| //Initialize the Component |
| f_EPTF_Var_CT_LogAll("----- START -------"); |
| f_EPTF_Var_init_CT(pl_selfName); |
| f_EPTF_Var_CT_LogAll("----- INIT statusPort1 -------"); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| //Subscribe to the variables on the provider component |
| f_subscribeVariables(pl_parents,realtime); |
| |
| //Waiting for sync |
| T_WAIT.start; |
| alt { |
| [] T_WAIT.timeout { |
| f_EPTF_Var_CT_LogAll("----- WAIT TO EXIT TIMEOUT -------"); |
| } |
| } |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| T_WAITResp.start; |
| alt { |
| [] T_WAITResp.timeout {} |
| [] statusPort1.receive(true) {f_EPTF_Var_CT_LogAll("Next Step"); T_WAITResp.stop; } |
| } |
| |
| log("Get the modified values"); |
| var integer vl_intValue; |
| var float vl_floatValue; |
| var boolean vl_boolValue; |
| var charstring vl_charstringValue; |
| var octetstring vl_octetstringValue; |
| var hexstring vl_hexstringValue; |
| var bitstring vl_bitstringValue; |
| var EPTF_IntegerList vl_integerlistValue; |
| var EPTF_FloatList vl_floatlistValue; |
| var EPTF_CharstringList vl_charstringlistValue; |
| var EPTF_StatusLED vl_statusLEDValue; |
| |
| |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdx); |
| f_setverdictFail(vl_intValue!=3); |
| vl_intValue := f_EPTF_Var_getIntValue(v_remoteIntSubscrIdxRef); |
| f_setverdictFail(vl_intValue!=5); |
| |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdx); |
| f_setverdictFail(vl_floatValue!=3.0); |
| vl_floatValue := f_EPTF_Var_getFloatValue(v_remoteFloatSubscrIdxRef); |
| f_setverdictFail(vl_floatValue!=5.0); |
| |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdx); |
| f_setverdictFail(vl_boolValue!=true); |
| vl_boolValue := f_EPTF_Var_getBoolValue(v_remoteBoolSubscrIdxRef); |
| f_setverdictFail(vl_boolValue!=false); |
| |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdx); |
| f_setverdictFail(vl_charstringValue!="3.0"); |
| vl_charstringValue := f_EPTF_Var_getCharstringValue(v_remoteCharstringSubscrIdxRef); |
| f_setverdictFail(vl_charstringValue!="5.0"); |
| |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdx); |
| f_setverdictFail(vl_octetstringValue!='03'O); |
| vl_octetstringValue := f_EPTF_Var_getOctetstringValue(v_remoteOctetstringSubscrIdxRef); |
| f_setverdictFail(vl_octetstringValue!='05'O); |
| |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdx); |
| f_setverdictFail(vl_hexstringValue!='03'H); |
| vl_hexstringValue := f_EPTF_Var_getHexstringValue(v_remoteHexstringSubscrIdxRef); |
| f_setverdictFail(vl_hexstringValue!='05'H); |
| |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdx); |
| f_setverdictFail(vl_bitstringValue!='10'B); |
| vl_bitstringValue := f_EPTF_Var_getBitstringValue(v_remoteBitstringSubscrIdxRef); |
| f_setverdictFail(vl_bitstringValue!='11111'B); |
| |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdx); |
| f_setverdictFail(vl_integerlistValue!={0,3}); |
| vl_integerlistValue := f_EPTF_Var_getIntegerlistValue(v_remoteIntegerlistSubscrIdxRef); |
| f_setverdictFail(vl_integerlistValue!={0,5}); |
| |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdx); |
| f_setverdictFail(vl_floatlistValue!={0.0,3.0}); |
| vl_floatlistValue := f_EPTF_Var_getFloatlistValue(v_remoteFloatlistSubscrIdxRef); |
| f_setverdictFail(vl_floatlistValue!={0.0,5.0}); |
| |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdx); |
| f_setverdictFail(vl_charstringlistValue!={"0","3"}); |
| vl_charstringlistValue := f_EPTF_Var_getCharstringlistValue(v_remoteCharstringlistSubscrIdxRef); |
| f_setverdictFail(vl_charstringlistValue!={"0","5"}); |
| |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdx); |
| f_setverdictFail(vl_statusLEDValue!={led_blue,"1"}); |
| vl_statusLEDValue := f_EPTF_Var_getStatusLEDValue(v_remoteStatusLEDSubscrIdxRef); |
| f_setverdictFail(vl_statusLEDValue!={led_black,"2"}); |
| |
| f_sendstatusPort1(true,pl_parents[0]); |
| |
| f_EPTF_Base_cleanup_CT(); |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_SimpleHashMap() runs on VariableTest_CT |
| { |
| //Create the provider variables |
| f_initVariables(); |
| |
| //Test the not reference type variables |
| f_setverdictFail(f_EPTF_Var_getName(f_EPTF_Var_getId("intVar"))!="intVar"); |
| f_setverdictFail(f_EPTF_Var_getName(f_EPTF_Var_getId("floatVar"))!="floatVar"); |
| f_setverdictFail(f_EPTF_Var_getName(f_EPTF_Var_getId("boolVar"))!="boolVar"); |
| f_setverdictFail(f_EPTF_Var_getName(f_EPTF_Var_getId("charstringVar"))!="charstringVar"); |
| f_setverdictFail(f_EPTF_Var_getName(f_EPTF_Var_getId("octetstringVar"))!="octetstringVar"); |
| f_setverdictFail(f_EPTF_Var_getName(f_EPTF_Var_getId("hexstringVar"))!="hexstringVar"); |
| f_setverdictFail(f_EPTF_Var_getName(f_EPTF_Var_getId("bitstringVar"))!="bitstringVar"); |
| f_setverdictFail(f_EPTF_Var_getName(f_EPTF_Var_getId("integerlistVar"))!="integerlistVar"); |
| f_setverdictFail(f_EPTF_Var_getName(f_EPTF_Var_getId("floatlistVar"))!="floatlistVar"); |
| f_setverdictFail(f_EPTF_Var_getName(f_EPTF_Var_getId("charstringlistVar"))!="charstringlistVar"); |
| f_setverdictFail(f_EPTF_Var_getName(f_EPTF_Var_getId("statusLEDVar"))!="statusLEDVar"); |
| |
| //Test the reference type variables |
| f_setverdictFail(f_EPTF_Var_getName(f_EPTF_Var_getId("intVarRef"))!="intVarRef"); |
| f_setverdictFail(f_EPTF_Var_getName(f_EPTF_Var_getId("floatVarRef"))!="floatVarRef"); |
| f_setverdictFail(f_EPTF_Var_getName(f_EPTF_Var_getId("boolVarRef"))!="boolVarRef"); |
| f_setverdictFail(f_EPTF_Var_getName(f_EPTF_Var_getId("charstringVarRef"))!="charstringVarRef"); |
| f_setverdictFail(f_EPTF_Var_getName(f_EPTF_Var_getId("octetstringVarRef"))!="octetstringVarRef"); |
| f_setverdictFail(f_EPTF_Var_getName(f_EPTF_Var_getId("hexstringVarRef"))!="hexstringVarRef"); |
| f_setverdictFail(f_EPTF_Var_getName(f_EPTF_Var_getId("bitstringVarRef"))!="bitstringVarRef"); |
| f_setverdictFail(f_EPTF_Var_getName(f_EPTF_Var_getId("integerlistVarRef"))!="integerlistVarRef"); |
| f_setverdictFail(f_EPTF_Var_getName(f_EPTF_Var_getId("floatlistVarRef"))!="floatlistVarRef"); |
| f_setverdictFail(f_EPTF_Var_getName(f_EPTF_Var_getId("charstringlistVarRef"))!="charstringlistVarRef"); |
| f_setverdictFail(f_EPTF_Var_getName(f_EPTF_Var_getId("statusLEDVarRef"))!="statusLEDVarRef"); |
| |
| |
| f_setverdictFail(f_EPTF_Var_intCompRef2Id(v_intVar)!=v_intVarRefIdx); |
| f_setverdictFail(f_EPTF_Var_floatCompRef2Id(v_floatVar)!=v_floatVarRefIdx); |
| f_setverdictFail(f_EPTF_Var_boolCompRef2Id(v_boolVar)!=v_boolVarRefIdx); |
| f_setverdictFail(f_EPTF_Var_charstringCompRef2Id(v_charstringVar)!=v_charstringVarRefIdx); |
| f_setverdictFail(f_EPTF_Var_octetstringCompRef2Id(v_octetstringVar)!=v_octetstringVarRefIdx); |
| f_setverdictFail(f_EPTF_Var_hexstringCompRef2Id(v_hexstringVar)!=v_hexstringVarRefIdx); |
| f_setverdictFail(f_EPTF_Var_bitstringCompRef2Id(v_bitstringVar)!=v_bitstringVarRefIdx); |
| f_setverdictFail(f_EPTF_Var_integerlistCompRef2Id(v_integerlistVar)!=v_integerlistVarRefIdx); |
| f_setverdictFail(f_EPTF_Var_floatlistCompRef2Id(v_floatlistVar)!=v_floatlistVarRefIdx); |
| f_setverdictFail(f_EPTF_Var_charstringlistCompRef2Id(v_charstringlistVar)!=v_charstringlistVarRefIdx); |
| f_setverdictFail(f_EPTF_Var_statusLEDCompRef2Id(v_statusLEDVar)!=v_statusLEDVarRefIdx); |
| |
| setverdict(pass); |
| } |
| |
| function f_EPTF_Var_Test_remoteIntSubscr_PostProc(in integer pl_idx, in EPTF_IntegerList pl_argList) runs on Var_Test_SubscribeWithCustomPeriod_CT { |
| var float vl_currentTime := f_EPTF_Base_getRelTimeInSecs(); |
| if (v_remoteIntSubscr_PrevTime>0.0) { |
| if (v_remoteIntSubscr_Period<0.0) { |
| v_remoteIntSubscr_Period := vl_currentTime - v_remoteIntSubscr_PrevTime; |
| } else { |
| v_remoteIntSubscr_Period := 0.7*(vl_currentTime - v_remoteIntSubscr_PrevTime)+0.3*v_remoteIntSubscr_Period; |
| } |
| } |
| v_remoteIntSubscr_PrevTime := vl_currentTime; |
| } |
| |
| function f_EPTF_Var_Test_intVarRefreshA_10_PostProc(in integer pl_idx, in EPTF_IntegerList pl_argList) runs on Var_Test_SubscribeWithCustomPeriod_CT { |
| var float vl_currentTime := f_EPTF_Base_getRelTimeInSecs(); |
| if (v_intVarRefreshA_10_PrevTime>0.0) { |
| if (v_intVarRefreshA_10_Period<0.0) { |
| v_intVarRefreshA_10_Period := vl_currentTime - v_intVarRefreshA_10_PrevTime; |
| } else { |
| v_intVarRefreshA_10_Period := 0.7*(vl_currentTime - v_intVarRefreshA_10_PrevTime)+0.3*v_intVarRefreshA_10_Period; |
| } |
| } |
| v_intVarRefreshA_10_PrevTime := vl_currentTime; |
| } |
| |
| function f_EPTF_Var_Test_intVarRefreshB_10_PostProc(in integer pl_idx, in EPTF_IntegerList pl_argList) runs on Var_Test_SubscribeWithCustomPeriod_CT { |
| var float vl_currentTime := f_EPTF_Base_getRelTimeInSecs(); |
| if (v_intVarRefreshB_10_PrevTime>0.0) { |
| if (v_intVarRefreshB_10_Period<0.0) { |
| v_intVarRefreshB_10_Period := vl_currentTime - v_intVarRefreshB_10_PrevTime; |
| } else { |
| v_intVarRefreshB_10_Period := 0.7*(vl_currentTime - v_intVarRefreshB_10_PrevTime)+0.3*v_intVarRefreshB_10_Period; |
| } |
| } |
| v_intVarRefreshB_10_PrevTime := vl_currentTime; |
| } |
| |
| function f_EPTF_Var_Test_intVarRefresh_20_PostProc(in integer pl_idx, in EPTF_IntegerList pl_argList) runs on Var_Test_SubscribeWithCustomPeriod_CT { |
| var float vl_currentTime := f_EPTF_Base_getRelTimeInSecs(); |
| if (v_intVarRefresh_20_PrevTime>0.0) { |
| if (v_intVarRefresh_20_Period<0.0) { |
| v_intVarRefresh_20_Period := vl_currentTime - v_intVarRefresh_20_PrevTime; |
| } else { |
| v_intVarRefresh_20_Period := 0.7*(vl_currentTime - v_intVarRefresh_20_PrevTime)+0.3* v_intVarRefresh_20_Period; |
| } |
| } |
| v_intVarRefresh_20_PrevTime := vl_currentTime; |
| } |
| |
| altstep as_EPTF_Var_Test_subscribeWithCustomPeriod_updateVars() runs on Var_Test_SubscribeWithCustomPeriod_CT { |
| [] t_updateVars.timeout { |
| v_currentValue := v_currentValue + 1; |
| |
| f_EPTF_Var_adjustContent(v_intVarRefreshB_10Idx,{intVal := v_currentValue}); |
| |
| t_updateVars.start; |
| repeat; |
| } |
| } |
| |
| function f_getDifference(in float pl_value, in float pl_expectedValue) return float { |
| var float vl_difference := pl_value - pl_expectedValue; |
| if (vl_difference<0.0) { |
| vl_difference := -1.0*vl_difference; |
| } |
| return vl_difference; |
| } |
| |
| |
| function f_EPTF_Var_Test_intVarRefreshB_10_Content_PostProc(in integer pl_idx, in EPTF_IntegerList pl_argList) runs on Var_Test_SubscribeWithCustomPeriod_CT { |
| var EPTF_Var_TimeLine vl_timeLine; |
| var float vl_currentTime := f_EPTF_Base_getRelTimeInSecs(); |
| var integer vl_int := f_EPTF_Var_getIntValue(f_EPTF_Var_getId("intVarRefreshB_10")); |
| |
| //action("10 Act. value: ", vl_int, " Prev. value: ", v_intVarRefreshB_10_PrevContent); |
| if ( f_EPTF_Var_checkSubscriptionMode(pl_idx,realtime)){ |
| if (vl_int != v_intVarRefreshB_10_PrevContent + 1 and v_intVarRefreshB_10_PrevContent != 0){ |
| setverdict(fail, "Incorrect value in intVarRefreshB_10: ",vl_int, ", should be: ", v_intVarRefreshB_10_PrevContent + 1); |
| } |
| } else { |
| if (vl_int != v_intVarRefreshB_10_PrevContent + 10 and v_intVarRefreshB_10_PrevContent != 0){ |
| setverdict(fail, "Incorrect value in intVarRefreshB_10: ",vl_int, ", should be: ", v_intVarRefreshB_10_PrevContent + 10); |
| } |
| |
| if (float2int(vl_currentTime) mod 10 != 0){ |
| setverdict(fail, "Incorrect Refresh rate: ",float2int(vl_currentTime)); |
| } |
| } |
| |
| f_EPTF_Var_getTimeLine(pl_idx, vl_timeLine); |
| if (f_EPTF_Var_checkSubscriptionMode(pl_idx,timeLine)){ |
| for(var integer vl_i := 0; vl_i < vl_timeLine.size; vl_i := vl_i + 1){ |
| if (ischosen(vl_timeLine.timeLineData[vl_i].content.intVal)) { |
| if (vl_timeLine.timeLineData[vl_i].content.intVal != v_intVarRefreshB_10_PrevContent + vl_i + 1) { |
| action("Not equal ", vl_timeLine.timeLineData[vl_i].content.intVal, " ", v_intVarRefreshB_10_PrevContent + vl_i + 1); |
| setverdict(fail, "Timeline not correct"); |
| } |
| |
| } else { setverdict(fail, "Not integers in the timeline, programming error")} |
| } |
| } |
| |
| v_intVarRefreshB_10_PrevContent := vl_int; |
| } |
| |
| function f_EPTF_Var_Test_intVarRefresh_20_Content_PostProc(in integer pl_idx, in EPTF_IntegerList pl_argList) runs on Var_Test_SubscribeWithCustomPeriod_CT { |
| var float vl_currentTime := f_EPTF_Base_getRelTimeInSecs(); |
| var EPTF_Var_TimeLine vl_timeLine; |
| var integer vl_int := f_EPTF_Var_getIntValue(f_EPTF_Var_getId("intVarRefresh_20")); |
| |
| //action("20 Act. value: ", vl_int, " Prev. value: ", v_intVarRefresh_20_PrevContent); |
| if ( f_EPTF_Var_checkSubscriptionMode(pl_idx,realtime)){ |
| if (vl_int != v_intVarRefresh_20_PrevContent + 1 and v_intVarRefresh_20_PrevContent != 0){ |
| setverdict(fail, "Incorrect value in intVarRefresh_20: ",vl_int, ", should be: ", v_intVarRefresh_20_PrevContent + 1); |
| } |
| } else { |
| if (vl_int != v_intVarRefresh_20_PrevContent + 20 and v_intVarRefresh_20_PrevContent != 0){ |
| setverdict(fail, "Incorrect value in intVarRefresh_20: ",vl_int, ", should be: ", v_intVarRefresh_20_PrevContent + 20); |
| } |
| |
| if (float2int(vl_currentTime) mod 20 != 0){ |
| setverdict(fail, "Incorrect Refresh rate: ",float2int(vl_currentTime)); |
| } |
| } |
| |
| f_EPTF_Var_getTimeLine(pl_idx, vl_timeLine); |
| if (f_EPTF_Var_checkSubscriptionMode(pl_idx,timeLine)){ |
| for(var integer vl_i := 0; vl_i < vl_timeLine.size; vl_i := vl_i + 1){ |
| if (ischosen(vl_timeLine.timeLineData[vl_i].content.intVal)) { |
| if (vl_timeLine.timeLineData[vl_i].content.intVal != v_intVarRefresh_20_PrevContent + vl_i + 1) { |
| action("Not equal", vl_timeLine.timeLineData[vl_i].content.intVal, " ", v_intVarRefresh_20_PrevContent + vl_i + 1); |
| setverdict(fail, "Timeline not correct"); |
| } |
| |
| } else { setverdict(fail, "Not integers in the timeline, programming error")} |
| } |
| } |
| |
| v_intVarRefresh_20_PrevContent := vl_int; |
| |
| |
| } |
| |
| altstep as_EPTF_Var_Test_subscribeWithCustomPeriod_Content_updateVars() runs on Var_Test_SubscribeWithCustomPeriod_CT { |
| [] t_updateVars.timeout { |
| v_currentValue := v_currentValue + 1; |
| |
| f_EPTF_Var_adjustContent(v_intVarRefresh_20Idx,{intVal := v_currentValue}); |
| //f_EPTF_Var_adjustContent(v_intVarRefreshB_10Idx,{intVal := v_currentValue}); |
| t_updateVars.start; |
| repeat; |
| } |
| } |
| |
| function f_EPTF_Var_Test_subscribeWithCustomPeriod_checkContentChange(in EPTF_Var_SubscriptionMode pl_subscriptionMode, in boolean pl_chained := false) runs on Var_Test_SubscribeWithCustomPeriod_CT { |
| f_EPTF_Var_init_CT("EPTF_Var_Test"); |
| var default vl_def := activate(as_EPTF_Var_Test_subscribeWithCustomPeriod_Content_updateVars()); |
| |
| f_EPTF_Var_newInt("intVar1",1,vl_intVarIdx); |
| |
| // set default sync period to 3.0 sec |
| f_EPTF_Var_setSyncInterval(3.0); |
| // set elementary period to 1.0 sec |
| f_EPTF_Var_setMinSyncInterval(1.0); |
| t_updateVars.start; |
| |
| f_EPTF_Var_subscribeRemote(self,"intVar1",pl_subscriptionMode, v_intVarRefreshB_10Idx,"intVarRefreshB_10",10); |
| if (pl_chained) { |
| if (pl_subscriptionMode==sampledAtSync) { |
| pl_subscriptionMode := sampled; |
| } |
| f_EPTF_Var_subscribeRemote(self,"intVarRefreshB_10",pl_subscriptionMode, v_intVarRefresh_20Idx,"intVarRefresh_20",20); |
| } else { |
| f_EPTF_Var_subscribeRemote(self,"intVar1",pl_subscriptionMode, v_intVarRefresh_20Idx,"intVarRefresh_20",20); |
| } |
| |
| timer t_wait; |
| t_wait.start(5.0); t_wait.timeout; |
| |
| f_EPTF_Var_addPostProcFn(v_intVarRefreshB_10Idx, {refers(f_EPTF_Var_Test_intVarRefreshB_10_Content_PostProc), {}}); |
| f_EPTF_Var_addPostProcFn(v_intVarRefresh_20Idx, {refers(f_EPTF_Var_Test_intVarRefresh_20_Content_PostProc), {}}); |
| |
| // start an alt for 35 secs. |
| t_wait.start(35.5); t_wait.timeout; |
| |
| if (v_intVarRefreshB_10_PrevContent != 0 and v_intVarRefresh_20_PrevContent != 0) |
| { setverdict(pass); } else {setverdict(fail, "Content did not change! No event arrived.");} |
| f_EPTF_Base_cleanup_CT(); |
| } |
| |
| |
| }// end of module |
| |
| |