Loading .gitmodules 0 → 100644 +4 −0 Original line number Diff line number Diff line [submodule "lib/asn1"] path = lib/asn1 url = https://forge.etsi.org/rep/ITS/asn1/cp_ts104072.git branch = TTF_T05x ItsPim_TestCases.ttcn 0 → 100644 +62 −0 Original line number Diff line number Diff line /** * @author ETSI / TTF T052 * @desc Testcases for CA Protocol * @reference ETSI TS 103 900 v2.2.1 * @copyright ETSI Copyright Notification * No part may be reproduced except as authorized by written permission. * The copyright and the foregoing restriction extend to reproduction in all media. * All rights reserved. */ module ItsPim_TestCases { // LibItsCam import from LibItsPim_TestSystem all; // Ats Its import from ItsPim_TpFunctions all; // 5.2.1 group pimMessageDissemination { group pimMessageFormat { /** * @desc Check that protocolVersion is set to 2 and messageID is * set to 21. * <pre> * Pics Selection: PICS_PIM_GENERATION * Initial conditions: * with { * the IUT being in the "initial state" * } * Expected behaviour: * ensure that { * when { * a PIM is generated * } * then { * the IUT sends a valid PIM * containing ITS PDU header * containing protocolVersion * indicating value 2 * and containing messageID * indicating value 21 * } * } * </pre> * * @see ETSI TS 104 202-2 v2.2.1 TP/PIM/MSD/FMT/BV-01 * @reference ETSI TS 103 882 v2.2.1, Annex B */ testcase TC_PIM_MSD_FMT_BV_01() runs on ItsPim system ItsPimSystem { f_PIM_MSD_FMT_BV_01(); } // End of TC_PIM_MSD_FMT_BV_01 } // End of group pimMessageFormat } // End of group pimMessageDissemination } // End of module ItsPim_TestCases ItsPim_TestControl.ttcn 0 → 100644 +26 −0 Original line number Diff line number Diff line /** * @author ETSI / TTF T052 * @desc Test Control file for PIM * @copyright ETSI Copyright Notification * No part may be reproduced except as authorized by written permission. * The copyright and the foregoing restriction extend to reproduction in all media. * All rights reserved. * */ module ItsPim_TestControl { // ATS PIM import from ItsPim_TestCases all; // LibIts import from LibItsPim_Pics all; // Test Execution control { if (PICS_PIM_GENERATION) { execute(TC_PIM_MSD_FMT_BV_01()); } } // End of 'control' statement } // End of ItsPim_TestControl No newline at end of file ItsPim_TpFunctions.ttcn 0 → 100644 +92 −0 Original line number Diff line number Diff line /** * @author ETSI / TTF T052 * @desc AVM TP functions * @copyright ETSI Copyright Notification * No part may be reproduced except as authorized by written permission. * The copyright and the foregoing restriction extend to reproduction in all media. * All rights reserved. * */ module ItsPim_TpFunctions { // LibCommon import from LibCommon_Sync all; import from LibCommon_VerdictControl all; import from LibCommon_Time all; import from LibCommon_BasicTypesAndValues all; import from LibCommon_DataStrings all; // LibIts import from ETSI_ITS_CDD language "ASN.1:1997" all; import from PIM_PDU_Descriptions language "ASN.1:1997" all; // LibItsCommon import from LibItsCommon_TypesAndValues all; import from LibItsCommon_Functions all; import from LibItsCommon_Pixits all; import from LibItsCommon_ASN1_NamedNumbers all; import from LibItsCommon_CddTemplates all; // LibItsPim import from LibItsPim_TestSystem all; import from LibItsPim_Functions all; import from LibItsPim_Templates all; import from LibItsPim_TypesAndValues all; import from LibItsPim_Pics all; import from LibItsPim_Pixits all; import from LibItsSecurity_Functions all; // 5.2.1 group pimMessageDissemination { group pimMessageFormat { /** * @desc TP Function for TC_PIM_MSD_FMT_BV_01 */ function f_PIM_MSD_FMT_BV_01() runs on ItsPim { // Local variables // Test control if (not PICS_PIM_GENERATION) { log("*** " & testcasename() & ": PICS_PIM_GENERATION required for executing the TC ***"); setverdict(inconc); stop; } // Test component configuration f_cfUp(); // Test adapter configuration // Preamble f_prInitialState(); f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success); // Test Body tc_ac.start; alt { [] pimPort.receive(mw_pimInd ( mw_pimMsg_any )){ tc_ac.stop; log("*** " & testcasename() & ": PASS: Expected MV message received ***"); f_selfOrClientSyncAndVerdict(c_tbDone, e_success); } [] tc_ac.timeout { log("*** " & testcasename() & ": INCONC: MV message not received ***"); f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout); } } // Postamble f_poDefault(); f_cfDown(); } // End of function f_PIM_MSD_FMT_BV_01 } // End of group pimMessageFormat } // End of group pimMessageDissemination } // End of module ItsPim_TpFunctions LICENSE 0 → 100644 +23 −0 Original line number Diff line number Diff line Copyright 2019-2026 ETSI Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. No newline at end of file Loading
.gitmodules 0 → 100644 +4 −0 Original line number Diff line number Diff line [submodule "lib/asn1"] path = lib/asn1 url = https://forge.etsi.org/rep/ITS/asn1/cp_ts104072.git branch = TTF_T05x
ItsPim_TestCases.ttcn 0 → 100644 +62 −0 Original line number Diff line number Diff line /** * @author ETSI / TTF T052 * @desc Testcases for CA Protocol * @reference ETSI TS 103 900 v2.2.1 * @copyright ETSI Copyright Notification * No part may be reproduced except as authorized by written permission. * The copyright and the foregoing restriction extend to reproduction in all media. * All rights reserved. */ module ItsPim_TestCases { // LibItsCam import from LibItsPim_TestSystem all; // Ats Its import from ItsPim_TpFunctions all; // 5.2.1 group pimMessageDissemination { group pimMessageFormat { /** * @desc Check that protocolVersion is set to 2 and messageID is * set to 21. * <pre> * Pics Selection: PICS_PIM_GENERATION * Initial conditions: * with { * the IUT being in the "initial state" * } * Expected behaviour: * ensure that { * when { * a PIM is generated * } * then { * the IUT sends a valid PIM * containing ITS PDU header * containing protocolVersion * indicating value 2 * and containing messageID * indicating value 21 * } * } * </pre> * * @see ETSI TS 104 202-2 v2.2.1 TP/PIM/MSD/FMT/BV-01 * @reference ETSI TS 103 882 v2.2.1, Annex B */ testcase TC_PIM_MSD_FMT_BV_01() runs on ItsPim system ItsPimSystem { f_PIM_MSD_FMT_BV_01(); } // End of TC_PIM_MSD_FMT_BV_01 } // End of group pimMessageFormat } // End of group pimMessageDissemination } // End of module ItsPim_TestCases
ItsPim_TestControl.ttcn 0 → 100644 +26 −0 Original line number Diff line number Diff line /** * @author ETSI / TTF T052 * @desc Test Control file for PIM * @copyright ETSI Copyright Notification * No part may be reproduced except as authorized by written permission. * The copyright and the foregoing restriction extend to reproduction in all media. * All rights reserved. * */ module ItsPim_TestControl { // ATS PIM import from ItsPim_TestCases all; // LibIts import from LibItsPim_Pics all; // Test Execution control { if (PICS_PIM_GENERATION) { execute(TC_PIM_MSD_FMT_BV_01()); } } // End of 'control' statement } // End of ItsPim_TestControl No newline at end of file
ItsPim_TpFunctions.ttcn 0 → 100644 +92 −0 Original line number Diff line number Diff line /** * @author ETSI / TTF T052 * @desc AVM TP functions * @copyright ETSI Copyright Notification * No part may be reproduced except as authorized by written permission. * The copyright and the foregoing restriction extend to reproduction in all media. * All rights reserved. * */ module ItsPim_TpFunctions { // LibCommon import from LibCommon_Sync all; import from LibCommon_VerdictControl all; import from LibCommon_Time all; import from LibCommon_BasicTypesAndValues all; import from LibCommon_DataStrings all; // LibIts import from ETSI_ITS_CDD language "ASN.1:1997" all; import from PIM_PDU_Descriptions language "ASN.1:1997" all; // LibItsCommon import from LibItsCommon_TypesAndValues all; import from LibItsCommon_Functions all; import from LibItsCommon_Pixits all; import from LibItsCommon_ASN1_NamedNumbers all; import from LibItsCommon_CddTemplates all; // LibItsPim import from LibItsPim_TestSystem all; import from LibItsPim_Functions all; import from LibItsPim_Templates all; import from LibItsPim_TypesAndValues all; import from LibItsPim_Pics all; import from LibItsPim_Pixits all; import from LibItsSecurity_Functions all; // 5.2.1 group pimMessageDissemination { group pimMessageFormat { /** * @desc TP Function for TC_PIM_MSD_FMT_BV_01 */ function f_PIM_MSD_FMT_BV_01() runs on ItsPim { // Local variables // Test control if (not PICS_PIM_GENERATION) { log("*** " & testcasename() & ": PICS_PIM_GENERATION required for executing the TC ***"); setverdict(inconc); stop; } // Test component configuration f_cfUp(); // Test adapter configuration // Preamble f_prInitialState(); f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success); // Test Body tc_ac.start; alt { [] pimPort.receive(mw_pimInd ( mw_pimMsg_any )){ tc_ac.stop; log("*** " & testcasename() & ": PASS: Expected MV message received ***"); f_selfOrClientSyncAndVerdict(c_tbDone, e_success); } [] tc_ac.timeout { log("*** " & testcasename() & ": INCONC: MV message not received ***"); f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout); } } // Postamble f_poDefault(); f_cfDown(); } // End of function f_PIM_MSD_FMT_BV_01 } // End of group pimMessageFormat } // End of group pimMessageDissemination } // End of module ItsPim_TpFunctions
LICENSE 0 → 100644 +23 −0 Original line number Diff line number Diff line Copyright 2019-2026 ETSI Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. No newline at end of file