Commit 9ee019c4 authored by garciay's avatar garciay
Browse files

Add security information (ssp, its-aid) transfer from lower layer to upper layer

Start implementation of ETSI TS 103 V1.0.4 Test Purposes (ETSI TS 103 191-2)
Remove old MapSpat ATS
parent 32760fec
......@@ -1846,7 +1846,7 @@ module ItsCam_TestCases {
* @desc Check that CAMs are not generated less frequently than
* T_GenCamMax.
* <pre>
* Pics Selection: PICS_CAM_GENERATION
* Pics Selection: PICS_CAM_GENERATION
* Initial conditions:
* with {
* the IUT being in the "initial state"
......
/**
* @author ETSI / STF517
* @version $URL$
* $Id$
* @desc IVIM Testcases
* @see ISO TS 19321
*/
module ItsIvim_TestCases {
// LibIts
import from LibItsIvim_TestSystem all;
// Ats Its
import from ItsIvim_TpFunctions all;
// 5.2.1
group iviMessageTransmission {
group iviMessageFormat {
/**
* @desc Check that protocolVersion is set to 1 and messageID is set to 6.
* <pre>
* Pics Selection: PICS_IVIM_GENERATION
* Initial conditions:
* with {
* the IUT being in the "initial state"
* }
* Expected behaviour:
* ensure that {
* when {
* a IVIM is generated
* }
* then {
* the IUT sends a valid IVIM
* containing ITS PDU header
* containing protocolVersion
* indicating value 1
* and containing messageID
* indicating value 6
* }
* }
* </pre>
*
* @see ETSI TS 103 191-2 TP_IS_IVI_MSGF_BV_01, ETSI TS 103 301, clause 7.3
*/
testcase TC_IS_IVI_MSGF_BV_01() runs on ItsIvim system ItsIvimSystem {
f_IS_IVI_MSGF_BV_01();
} // End of TC_IS_IVI_MSGF_BV_01
} // End of group iviMessageFormat
group iviEventGeneration {
/**
* @desc Check that IVI Service generates a new IVIM on reception of a valid AppIVIM_Trigger request
* <pre>
* PICS Selection: PICS_IVIM_GENERATION
* Initial conditions:
* with {
* the IUT being in the "initial state"
* }
* Expected behaviour:
* ensure that {
* when {
* the IUT receives an AppIVIM_Trigger request from the application layer
* }
* then {
* the IUT sends a valid IVIM
* }
* }
* </pre>
*
* @see ETSI TS 103 191-2 TP_IS_IVI_EVGN_BV_01, ETSI TS 103 301, clause 7.4.1
*/
testcase TC_IS_IVI_EVGN_BV_01() runs on ItsIvim system ItsIvimSystem {
f_IS_IVI_EVGN_BV_01();
} // End of TC_IS_IVI_EVGN_BV_01
/**
* @desc Check that a new iviIdentificationNumber value is assigned for each newly generated IVIM
* <pre>
* PICS Selection: PICS_IVIM_GENERATION
* Initial conditions:
* with {
* the IUT being in the "initial state"
* and the IUT having generated several IVIM
* }
* Expected behaviour:
* ensure that {
* when {
* the IUT is requested to generate a new IVIM
* }
* then {
* the IUT sends a valid IVIM
* containing ivi
* containing mandatory
* containing iviIdentificationNumber
* indicating an unused value
* }
* }
* </pre>
*
* @see ETSI TS 103 191-2 TP_IS_IVI_EVGN_BV_02, ETSI TS 103 301, clause 7.4.1
*/
testcase TC_IS_IVI_EVGN_BV_02() runs on ItsIvim system ItsIvimSystem {
f_IS_IVI_EVGN_BV_02();
} // End of TC_IS_IVI_EVGN_BV_02
/**
* @desc Check that iviIdentificationNumber value is set to a next unused value each time an IVIM is detected
* <pre>
* PICS Selection: PICS_IVIM_GENERATION
* Initial conditions:
* with {
* the IUT being in the "initial state"
* and the IUT having generated several IVIM
* and the IUT having generated its last DENM
* containing ivi
* containing mandatory
* containing iviIdentificationNumber
* indicating IVI_ID_1
* and no active IviID being associated with iviIdentificationNumber IVI_ID_1 + 1
* }
* Expected behaviour:
* ensure that {
* when {
* the IUT is requested to generate a new IVIM
* }
* then {
* the IUT sends a valid IVIM
* containing ivi
* containing mandatory
* containing iviIdentificationNumber
* indicating IVI_ID_1 + 1
* }
* }
* </pre>
*
* @see ETSI TS 103 191-2 TP_IS_IVI_EVGN_BV_03, ETSI TS 103 301, clause 7.4.1
*/
testcase TC_IS_IVI_EVGN_BV_03() runs on ItsIvim system ItsIvimSystem {
f_IS_IVI_EVGN_BV_03();
} // End of TC_IS_IVI_EVGN_BV_03
/**
* @desc Check that a new generated IVIM contains an iviStatus set to 'new'
* <pre>
* PICS Selection: PICS_IVIM_GENERATION
* Initial conditions:
* with {
* the IUT being in the "initial state"
* }
* Expected behaviour:
* ensure that {
* when {
* the IUT is requested to generate a new IVIM
* }
* then {
* the IUT sends a valid IVIM
* containing ivi
* containing mandatory
* containing iviStatus
* indicating 'new'
* }
* }
* </pre>
*
* @see ETSI TS 103 191-2 TP_IS_IVI_EVGN_BV_04, ETSI TS 103 301, clause 7.4.2
*/
testcase TC_IS_IVI_EVGN_BV_04() runs on ItsIvim system ItsIvimSystem {
f_IS_IVI_EVGN_BV_04();
} // End of TC_IS_IVI_EVGN_BV_04
} // End of group iviEventGeneration
group iviEventUpdate {
/**
* @desc Check that an updated IVIM contains an iviStatus set to 'update'
* <pre>
* PICS Selection: PICS_IVIM_GENERATION
* Initial conditions:
* with {
* the IUT being in the "initial state"
* and the IUT having generated an event
* containing ivi
* containing mandatory
* containing iviIdentificationNumber
* indicating IVIM_ID_1
* containing iviStatus
* indicating 'new'
* }
* Expected behaviour:
* ensure that {
* when {
* the IUT receives an AppIVIM_update request associated with IVIM_ID_1
* }
* then {
* the IUT sends a valid IVIM
* containing ivi
* containing mandatory
* containing iviStatus
* indicating 'update'
* }
* }
* </pre>
*
* @see ETSI TS 103 191-2 TP_IS_IVI_EVUP_BV_05, ETSI TS 103 301, clause 7.4.2
*/
testcase TC_IS_IVI_EVUP_BV_05() runs on ItsIvim system ItsIvimSystem {
f_IS_IVI_EVUP_BV_05();
} // End of TC_IS_IVI_EVUP_BV_05
/**
* @desc Check that an update can change the validity time to the IVIM - validTo information field
* <pre>
* PICS Selection: PICS_IVIM_GENERATION
* Initial conditions:
* with {
* the IUT being in the "initial state"
* and the IUT having generated an event
* containing ivi
* containing mandatory
* not containing validTo
* and containing iviStatus
* indicating 'update'
* }
* Expected behaviour:
* ensure that {
* when {
* the IUT receives an AppIVIM_update indicating a validTo value VT_1
* }
* then {
* the IUT sends a valid IVIM
* containing ivi
* containing mandatory
* containing validTo
* indicating VT_1
* and containing iviStatus
* indicating 'update'
* }
* }
* </pre>
*
* @see ETSI TS 103 191-2 TP_IS_IVI_EVUP_BV_06, ETSI TS 103 301, clause 7.4.2
*/
testcase TC_IS_IVI_EVUP_BV_06() runs on ItsIvim system ItsIvimSystem {
f_IS_IVI_EVUP_BV_06();
} // End of TC_IS_IVI_EVUP_BV_06
/**
* @desc Check that an update can change the validity time to the IVIM - validFrom information field
* <pre>
* PICS Selection: PICS_IVIM_GENERATION
* Initial conditions:
* with {
* the IUT being in the "initial state"
* and the IUT having generated an event
* containing ivi
* containing mandatory
* not containing validFrom
* and containing iviStatus
* indicating 'update'
* }
* Expected behaviour:
* ensure that {
* when {
* the IUT receives an AppIVIM_update indicating a validFrom value VF_1
* }
* then {
* the IUT sends a valid IVIM
* containing ivi
* containing mandatory
* containing validFROM
* indicating VF_1
* and containing iviStatus
* indicating 'update'
* }
* }
* </pre>
*
* @see ETSI TS 103 191-2 TP_IS_IVI_EVUP_BV_07, ETSI TS 103 301, clause 7.4.2
*/
testcase TC_IS_IVI_EVUP_BV_07() runs on ItsIvim system ItsIvimSystem {
f_IS_IVI_EVUP_BV_07();
} // End of TC_IS_IVI_EVUP_BV_07
} // End of group iviEventUpdate
group iviCommunication {
/**
* @desc Check that IVIM uses BTP_B packet
* <pre>
* Pics Selection: PICS_IVIM_GENERATION
* Initial conditions:
* with {
* the IUT being in the "initial state"
* and the IUT sending IVIM
* }
* Expected behaviour:
* ensure that {
* when {
* an IVIM is generated
* }
* then {
* the IUT sends a valid IVIM
* encapsulated in a BTP-B packet
* }
* }
* </pre>
*
* @version 1.0.4
* @see ETSI TS 103 191-2 v0.0.1 TP_IS_IVIM_COMM_BV_02_01
* @reference ETSI TS 103 301 V1.0.4 Clause 7.4.3.2
*/
testcase TC_IS_IVIM_COMM_BV_02_01 () runs on ItsIvim system ItsIvimSystem {
f_IS_IVIM_COMM_BV_02_01();
} // End of testcase TC_IS_IVIM_COMM_BV_02_01
/**
* @desc Check that the destination port for IVIM is set to 2006
* <pre>
* Pics Selection: PICS_IVIM_GENERATION
* Initial conditions:
* with {
* the IUT being in the "initial state"
* and the IUT sending IVIM
* }
* Expected behaviour:
* ensure that {
* when {
* an IVIM is generated
* }
* then {
* the IUT sends a valid IVIM
* encapsulated in a BTP packet
* containing a destination port value set to 2006
* and containing a destination port info value set to 0
* }
* }
* </pre>
*
* @version 1.0.4
* @see ETSI TS 103 191-2 v0.0.1 TP_IS_IVIM_COMM_BV_02_02
* @reference ETSI TS 103 301 V1.0.4 Clause 7.4.3.2
*/
testcase TC_IS_IVIM_COMM_BV_02_02 () runs on ItsIvim system ItsIvimSystem {
f_IS_IVIM_COMM_BV_02_02();
} // End of testcase TC_IS_IVIM_COMM_BV_02_02
} // End of group iviCommunication
} // End of group iviMessageTransmission
group iviMessageReception {
} // End of group iviMessageReception
} // End of module ItsIvim_TestCases
/**
* @author ETSI / STF517
* @version $URL$
* $Id$
* @desc Test Control file for IVIM
*
*/
module ItsIvim_TestControl {
// ATS IVIM
import from ItsIvim_TestCases all;
// LibIts
import from LibItsIvim_Pics all;
// Test Execution
control {
if(PICS_IVIM_GENERATION) {
execute(TC_IS_IVI_MSGF_BV_01());
execute(TC_IS_IVI_EVGN_BV_01());
execute(TC_IS_IVI_EVGN_BV_02());
}
if (PICS_RSU_ROLE) {
} else {
}
}
} // End of module ItsIvim_TestControl
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
/**
* @author ETSI / STF484
* @version $URL$
* $Id$
* @desc Test Control file for MAP SPAT
*
*/
module ItsMapSpat_TestControl {
// ATS MAPSpat
import from ItsMapSpat_TestCases {testcase all};
// LibIts
import from LibItsMapSpat_Pics all;
// Test Execution
control {
if ( PICS_RSU ) {
execute(TC_MAP_SPAT_MSD_BV_01());
execute(TC_MAP_SPAT_MSD_BV_02());
execute(TC_MAP_SPAT_MSD_BV_05());
execute(TC_MAP_SPAT_MSD_BV_06());
execute(TC_MAP_SPAT_MSD_BV_08());
execute(TC_MAP_SPAT_MSD_BV_09());
execute(TC_MAP_SPAT_MSD_BV_10());
execute(TC_MAP_SPAT_MSD_BV_11());
execute(TC_MAP_SPAT_MSD_BV_12());
execute(TC_MAP_SPAT_MSD_BV_15());
execute(TC_MAP_SPAT_MSD_BV_16());
}
else {
execute(TC_MAP_SPAT_MSP_BV_01());
execute(TC_MAP_SPAT_MSP_BV_02());
}
}
} // end ItsMapSpat_TestControl
\ No newline at end of file
/**
* @author ETSI / STF484
* @version $URL$
* $Id$
* @desc Test Control file for MAPEM SPATEM
*
*/
module ItsMapemSpatem_TestControl {
// LibItsMapemSpatem
import from LibItsMapemSpatem_Pics all;
// ATS MAPSpat
import from ItsMapem_TestCases all;
import from ItsSpatem_TestCases all;
// Test Execution
control {
} // End of 'control' statement
} // End of module ItsMapemSpatem_TestControl
This diff is collapsed.
/**
* @author ETSI STF517
* @version $URL$
* $Id$
* @desc MAPEM TP functions
*
*/
module ItsMapem_TpFunctions {
// LibCommon
import from LibCommon_BasicTypesAndValues all;
import from LibCommon_Sync all;
import from LibCommon_VerdictControl all;
import from LibCommon_Time all;
// LibItsCommon
import from LibItsCommon_Functions all;
import from LibItsCommon_TypesAndValues all;
// LibIts
import from ITS_Container language "ASN.1:1997" all;
import from MAPEM_PDU_Descriptions language "ASN.1:1997" all;
import from SPATEM_PDU_Descriptions language "ASN.1:1997" all;
import from DSRC language "ASN.1:1997" all;
// LibItsMapemSpatem
import from LibItsMapemSpatem_TestSystem all;
import from LibItsMapemSpatem_Functions all;
import from LibItsMapemSpatem_Templates all;
import from LibItsMapemSpatem_TypesAndValues all;
import from LibItsMapemSpatem_Pics all;
group mapeMessageDissemination {
group mapeMessageFormat {
/**
* @desc TP Function for TC_IS_RLT_MSGF_BV_01
*/
function f_IS_RLT_MSGF_BV_01 () runs on ItsMapemSpatem {
// Local variables
// Test control
if (not PICS_RSU or not PICS_MAPEM_GENERATION) {
log("*** " & testcasename() & ": PICS_RSU and PICS_MAPEM_GENERATION required for executing the TC ***");
setverdict(inconc);
stop;
}
// Test component configuration
f_cfUp();
// Preamble
f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success);
// Test Body
tc_ac.start;
alt {
[] mapemSpatemPort.receive(
mw_mapemInd(
mw_mapemPdu
)) {
tc_ac.stop;
log("*** " & testcasename() & ": PASS: Successfully received MAPEM PDU header. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
}
[] tc_ac.timeout {
log("*** " & testcasename() & ": INCONC: Timeout while awaiting the reception of a message. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout);
}
}
// Postamble
f_poDefault();
f_cfDown();
} // End of function f_IS_RLT_MSGF_BV_01
} // End of group mapeMessageFormat
group mapeMessageEventGeneration {
/**
* @desc TP Function for TC_IS_RLT_EVGN_BV_01
*/
function f_IS_RLT_EVGN_BV_01 () runs on ItsMapemSpatem {
// Local variables
// Test control
if (not PICS_RSU or not PICS_MAPEM_GENERATION) {
log("*** " & testcasename() & ": PICS_RSU and PICS_MAPEM_GENERATION required for executing the TC ***");
setverdict(inconc);
stop;
}
// Test component configuration
f_cfUp();
// Preamble
f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success);
// Test Body
tc_ac.start;
alt {
[] mapemSpatemPort.receive(
mw_mapemInd(
mw_mapemPdu(
mw_mapemWellFormatted
))) {
tc_ac.stop;
log("*** " & testcasename() & ": PASS: Successfully received MAPEM. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
}
[] mapemSpatemPort.receive(
mw_mapemInd(
mw_mapemPdu(
mw_defaultMapem
))) {
tc_ac.stop;
log("*** " & testcasename() & ": FAIL: Received a MAPEM with incorrect information. ***");
f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
}
[] tc_ac.timeout {
log("*** " & testcasename() & ": INCONC: Timeout while