Loading ttcn/MapemSpatem/LibItsMapemSpatem_Functions.ttcn +100 −0 Original line number Original line Diff line number Diff line Loading @@ -170,6 +170,17 @@ module LibItsMapemSpatem_Functions { } } } } /** * @desc Default handling cf02 de-initialisation. */ altstep a_cf02Down() runs on ItsMtc { [] a_shutdown() { f_cf02Down(); log("*** a_cf02Down: INFO: TEST COMPONENT NOW STOPPING ITSELF! ***"); stop; } } /** /** * @desc The base default. * @desc The base default. */ */ Loading Loading @@ -264,6 +275,66 @@ module LibItsMapemSpatem_Functions { f_disconnect4SelfOrClientSync(); f_disconnect4SelfOrClientSync(); } // End of f_cfDown } // End of f_cfDown /** * @desc Setups default configuration * @param p_certificateId The certificate identifier the TA shall use in case of secured IUT */ function f_cf02Up(in charstring p_certificateId := PX_CERT_FOR_TS ) runs on ItsMtc mtc ItsMtc system ItsMapemSpatemSystem { // Variables var integer i; // Select components vc_componentTable := {{c_compMap, omit}, {c_compSpat, omit}}; // Create components for(i:=0; i < lengthof(vc_componentTable); i:=i+1) { vc_componentTable[i].msComponent := ItsMapemSpatem.create(vc_componentTable[i].componentName) alive; } // Map & Connect map(self:acPort, system:acPort); map(self:utPort, system:utPort); connect(self:syncPort, mtc:syncPort); for(i:=0; i < lengthof(vc_componentTable); i:=i+1) { map(vc_componentTable[i].msComponent:acPort, system:acPort); map(vc_componentTable[i].msComponent:utPort, system:utPort); map(vc_componentTable[i].msComponent:mapemSpatemPort, system:mapemSpatemPort); connect(vc_componentTable[i].msComponent:syncPort, self:syncPort); } activate(a_cf02Down()); // Initialise secured mode f_initialiseSecuredMode(p_certificateId); } // End of f_cf02Up /** * @desc Deletes default configuration */ function f_cf02Down() runs on ItsMtc mtc ItsMtc system ItsMapemSpatemSystem { // Local variables var integer i; f_uninitialiseSecuredMode(); // Unmap & Disconnect for(i:=0; i < lengthof(vc_componentTable); i:=i+1) { unmap(vc_componentTable[i].msComponent:utPort, system:utPort); unmap(vc_componentTable[i].msComponent:acPort, system:acPort); unmap(vc_componentTable[i].msComponent:mapemSpatemPort, system:mapemSpatemPort); disconnect(vc_componentTable[i].msComponent:syncPort, self:syncPort); } unmap(self:acPort, system:acPort); unmap(self:utPort, system:utPort); disconnect(self:syncPort, mtc:syncPort); } // End of f_cf02Down } // End of of mapSpatConfigurationFunctions } // End of of mapSpatConfigurationFunctions group preambles { group preambles { Loading Loading @@ -358,4 +429,33 @@ module LibItsMapemSpatem_Functions { } // End of group receiveFunctions } // End of group receiveFunctions group componentFunctions { /** * @desc Get the component corresponding to a key * @param p_componentName Name searched component * @return ItsGeoNetworking - The searched position vector */ function f_getComponent( in charstring p_componentName ) runs on ItsMtc return ItsMapemSpatem { var ItsMapemSpatem v_return := null; var integer i := 0; for (i:=0; i<lengthof(vc_componentTable); i:=i+1) { if (vc_componentTable[i].componentName == p_componentName) { if (isvalue(vc_componentTable[i].msComponent)) { v_return := valueof(vc_componentTable[i].msComponent); } else { testcase.stop(__SCOPE__ & " can not handle omitted MS components"); } } } return v_return; } } } // End of module LibItsMapemSpatem_Functions } // End of module LibItsMapemSpatem_Functions ttcn/MapemSpatem/LibItsMapemSpatem_TestSystem.ttcn +18 −0 Original line number Original line Diff line number Diff line Loading @@ -63,6 +63,13 @@ module LibItsMapemSpatem_TestSystem { } // End of group interfacePorts } // End of group interfacePorts /** * @desc ITS Main Test Component */ type component ItsMtc extends ItsBaseMtc, ItsMapemSpatem { var ComponentTable vc_componentTable := {}; } // end ItsMtc /** /** * @desc ITS System Adapter * @desc ITS System Adapter */ */ Loading Loading @@ -155,4 +162,15 @@ module LibItsMapemSpatem_TestSystem { encode "LibIts_Interface" encode "LibIts_Interface" } // End of group ApplPrimitives } // End of group ApplPrimitives group misc { type record ComponentEntry { charstring componentName, ItsMapemSpatem msComponent optional } type record of ComponentEntry ComponentTable; } // end misc } // End of module LibItsMapemSpatem_TestSystem } // End of module LibItsMapemSpatem_TestSystem ttcn/MapemSpatem/LibItsMapemSpatem_TypesAndValues.ttcn +5 −0 Original line number Original line Diff line number Diff line Loading @@ -28,6 +28,11 @@ module LibItsMapemSpatem_TypesAndValues { group mapSpatConstants { group mapSpatConstants { const charstring c_compIut := "IUT"; const charstring c_compMTC := "MTC"; const charstring c_compMap := "PtcMap"; const charstring c_compSpat := "PtcSpat"; } // end group mapSpatConstants } // end group mapSpatConstants group utPrimitives { group utPrimitives { Loading Loading
ttcn/MapemSpatem/LibItsMapemSpatem_Functions.ttcn +100 −0 Original line number Original line Diff line number Diff line Loading @@ -170,6 +170,17 @@ module LibItsMapemSpatem_Functions { } } } } /** * @desc Default handling cf02 de-initialisation. */ altstep a_cf02Down() runs on ItsMtc { [] a_shutdown() { f_cf02Down(); log("*** a_cf02Down: INFO: TEST COMPONENT NOW STOPPING ITSELF! ***"); stop; } } /** /** * @desc The base default. * @desc The base default. */ */ Loading Loading @@ -264,6 +275,66 @@ module LibItsMapemSpatem_Functions { f_disconnect4SelfOrClientSync(); f_disconnect4SelfOrClientSync(); } // End of f_cfDown } // End of f_cfDown /** * @desc Setups default configuration * @param p_certificateId The certificate identifier the TA shall use in case of secured IUT */ function f_cf02Up(in charstring p_certificateId := PX_CERT_FOR_TS ) runs on ItsMtc mtc ItsMtc system ItsMapemSpatemSystem { // Variables var integer i; // Select components vc_componentTable := {{c_compMap, omit}, {c_compSpat, omit}}; // Create components for(i:=0; i < lengthof(vc_componentTable); i:=i+1) { vc_componentTable[i].msComponent := ItsMapemSpatem.create(vc_componentTable[i].componentName) alive; } // Map & Connect map(self:acPort, system:acPort); map(self:utPort, system:utPort); connect(self:syncPort, mtc:syncPort); for(i:=0; i < lengthof(vc_componentTable); i:=i+1) { map(vc_componentTable[i].msComponent:acPort, system:acPort); map(vc_componentTable[i].msComponent:utPort, system:utPort); map(vc_componentTable[i].msComponent:mapemSpatemPort, system:mapemSpatemPort); connect(vc_componentTable[i].msComponent:syncPort, self:syncPort); } activate(a_cf02Down()); // Initialise secured mode f_initialiseSecuredMode(p_certificateId); } // End of f_cf02Up /** * @desc Deletes default configuration */ function f_cf02Down() runs on ItsMtc mtc ItsMtc system ItsMapemSpatemSystem { // Local variables var integer i; f_uninitialiseSecuredMode(); // Unmap & Disconnect for(i:=0; i < lengthof(vc_componentTable); i:=i+1) { unmap(vc_componentTable[i].msComponent:utPort, system:utPort); unmap(vc_componentTable[i].msComponent:acPort, system:acPort); unmap(vc_componentTable[i].msComponent:mapemSpatemPort, system:mapemSpatemPort); disconnect(vc_componentTable[i].msComponent:syncPort, self:syncPort); } unmap(self:acPort, system:acPort); unmap(self:utPort, system:utPort); disconnect(self:syncPort, mtc:syncPort); } // End of f_cf02Down } // End of of mapSpatConfigurationFunctions } // End of of mapSpatConfigurationFunctions group preambles { group preambles { Loading Loading @@ -358,4 +429,33 @@ module LibItsMapemSpatem_Functions { } // End of group receiveFunctions } // End of group receiveFunctions group componentFunctions { /** * @desc Get the component corresponding to a key * @param p_componentName Name searched component * @return ItsGeoNetworking - The searched position vector */ function f_getComponent( in charstring p_componentName ) runs on ItsMtc return ItsMapemSpatem { var ItsMapemSpatem v_return := null; var integer i := 0; for (i:=0; i<lengthof(vc_componentTable); i:=i+1) { if (vc_componentTable[i].componentName == p_componentName) { if (isvalue(vc_componentTable[i].msComponent)) { v_return := valueof(vc_componentTable[i].msComponent); } else { testcase.stop(__SCOPE__ & " can not handle omitted MS components"); } } } return v_return; } } } // End of module LibItsMapemSpatem_Functions } // End of module LibItsMapemSpatem_Functions
ttcn/MapemSpatem/LibItsMapemSpatem_TestSystem.ttcn +18 −0 Original line number Original line Diff line number Diff line Loading @@ -63,6 +63,13 @@ module LibItsMapemSpatem_TestSystem { } // End of group interfacePorts } // End of group interfacePorts /** * @desc ITS Main Test Component */ type component ItsMtc extends ItsBaseMtc, ItsMapemSpatem { var ComponentTable vc_componentTable := {}; } // end ItsMtc /** /** * @desc ITS System Adapter * @desc ITS System Adapter */ */ Loading Loading @@ -155,4 +162,15 @@ module LibItsMapemSpatem_TestSystem { encode "LibIts_Interface" encode "LibIts_Interface" } // End of group ApplPrimitives } // End of group ApplPrimitives group misc { type record ComponentEntry { charstring componentName, ItsMapemSpatem msComponent optional } type record of ComponentEntry ComponentTable; } // end misc } // End of module LibItsMapemSpatem_TestSystem } // End of module LibItsMapemSpatem_TestSystem
ttcn/MapemSpatem/LibItsMapemSpatem_TypesAndValues.ttcn +5 −0 Original line number Original line Diff line number Diff line Loading @@ -28,6 +28,11 @@ module LibItsMapemSpatem_TypesAndValues { group mapSpatConstants { group mapSpatConstants { const charstring c_compIut := "IUT"; const charstring c_compMTC := "MTC"; const charstring c_compMap := "PtcMap"; const charstring c_compSpat := "PtcSpat"; } // end group mapSpatConstants } // end group mapSpatConstants group utPrimitives { group utPrimitives { Loading